当前位置: 首页 > news >正文

python高德地图+58租房网站平台源码

wx供重浩:创享日记
对话框发送:python地图
免费获取完整源码源文件+说明文档+配置教程等


在PyCharm中运行《高德地图+58租房》即可进入如图1所示的高德地图网页。

在这里插入图片描述
具体的操作步骤如下:
(1)打开地图网页后,在编辑框中输入工作地点,将显示自动补全的信息提示,如图2所示。

在这里插入图片描述
(2)工作地点选择完成以后,将在地图中显示1小时内可以到达的范围,如图3所示。

在这里插入图片描述
(3)单击选择文件按钮导入房源信息文件,如图4所示。

在这里插入图片描述
(4)房源文件导入后,网页中的地图将自动显示房源位置的标记,如图5所示。

在这里插入图片描述
(5)单击任意房源位置的标记,地图将显示起点至终点的路线规划图,然后地图左侧将显示路线规划具体的信息。如图6所示。

在这里插入图片描述
(6)单击标记顶部的房源名称,将打开该房源相关信息的网页地址如图7所示。

在这里插入图片描述
部分源码如下,其余完整详见下载。

def get_html():# 网址url = 'https://bj.58.com/wangjing/pinpaigongyu/pn/{page}/?minprice=2000_3000'# 初始化页码page = 0# 打开re.csv文件,如果没有就创建一个,并设置写入模式csv_file = open('renting.csv', 'w', encoding='utf_8_sig', newline='')# 创建writer对象writer = csv.writer(csv_file, dialect='excel')# 循环所有页面while True:page += 1# 抓取目标页面response = requests.get(url.format(page=page))response.encoding = 'utf-8'  # 设置编码方式# 创建一个BeautifulSoup对象,获取页面正文html = BeautifulSoup(response.text, "html.parser")# 获取当前页面的房子信息house_list = html.select(".list > li")print('正在下载网页', url.format(page=page))page_a_list = html.find('div',class_='page')   # 查看页面中是否有切换页面的按钮if page_a_list !=None:                        # 判断存在切换页面的按钮时page_a_list=page_a_list.select('span')     # 查找关于按钮名称的代码str_page = str(page_a_list)                # 将代码转换成字符类型if '<span>下一页</span>' in str_page:     # 判断当前页面是否有“下一页按钮”write_file(house_list,writer)         # 如果有就写入数据并继续循环下一页else:                                    # 否则就写入当前页面的数据,跳出循环write_file(house_list,writer)# 关闭文件csv_file.close()breakelse:                                        # 当前页面没有切换按钮时,写入当前页面数据,跳出循环write_file(house_list, writer)# 关闭文件csv_file.close()breakdef write_file(house_list,writer):# 便利房子信息for house in house_list:if house != None:# 获取房子标题house_title = house.find('div', class_='img').img.get('alt')# 对标题进行分隔house_info_list = house_title.split()# 获取房子位置house_location = house_info_list[1]# 获取房子链接地址house_url = house.select("a")[0]["href"]# 写入一行数据writer.writerow([house_title, house_location, house_url])get_html()

相关文章:

python高德地图+58租房网站平台源码

wx供重浩&#xff1a;创享日记 对话框发送&#xff1a;python地图 免费获取完整源码源文件说明文档配置教程等 在PyCharm中运行《高德地图58租房》即可进入如图1所示的高德地图网页。 具体的操作步骤如下&#xff1a; &#xff08;1&#xff09;打开地图网页后&#xff0c;在编…...

ubuntu 将jupyter-lab保存为桌面快捷方式和favourites

ubuntu: 将jupyter-lab保存为桌面快捷方式和favourites desktop shortcut 建立一个新的desktop文件 cd ~/Desktop touch Jupyter-lab.desktop将文件修改成如下&#xff1a; [Desktop Entry] Version1.0 NameJupyterlab CommentBack up your data with one click Exec/home/cjb/…...

Java 类和对象简介

类是对象的抽象&#xff0c;是一组具有相同特性&#xff08;属性&#xff0c;事物的状态信息&#xff09;和行为&#xff08;事物能做什么&#xff09;的事物的集合&#xff0c;可以看做一类事物的模板。 对象是类的实例化&#xff0c;是具体的事物。 比如&#xff1a;人类和…...

时间复杂度的计算

个人主页&#xff1a;平行线也会相交 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 平行线也会相交 原创 收录于专栏【数据结构初阶&#xff08;C实现&#xff09;】 文章目录123456789时间复杂度&#xff08;就是一个函数&#xff09;的计算&#xff0c;…...

站内信箱系统的设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;在经济全球化和信息技术成为发展迅速的今时今日&#xff0c;人们通过电子邮件收发进行信息传递已经成为主流。随着互联网和网络办公的发展&#xff0c;电子邮件正在被广泛应用在人们的日常生活中。跟据调查研究统计&#xff0c;在全…...

systemV共享内存

systemV共享内存 共享内存区是最快的IPC形式。共享内存的大小一般是4KB的整数倍&#xff0c;因为系统分配共享内存是以4KB为单位的&#xff08;Page&#xff09;&#xff01;4KB也是划分内存块的基本单位。 之前学的管道&#xff0c;是通过文件系统来实现让不同的进程看到同一…...

Python基础之if逻辑判断

在学习if语句之前&#xff0c;我们先学习一种数据类型&#xff0c;布尔类型&#xff08;bool&#xff09;&#xff0c;在if语句中&#xff0c;我们需要通过判断条件是否为真或者假&#xff0c;才进入下面的语句块执行。 一、布尔类型&#xff08;bool&#xff09; 布尔类型&a…...

实现pdf文件预览

前言 工作上接到的一个任务&#xff0c;实现pdf的在线预览&#xff0c;其实uniapp中已经有对应的api&#xff1a;uni.openDocument(OBJECT)&#xff08;新开页面打开文档&#xff0c;支持格式&#xff1a;doc, xls, ppt, pdf, docx, xlsx, pptx。&#xff09;**实现了相关功能…...

【java】alibaba Fastjson --全解史上最快的JSON解析库

文章目录前序Fastjson 简介Fastjson 的优点速度快使用广泛测试完备使用简单功能完备下载和使用将 Java 对象转换为 JSON 格式JSONField创建 JSON 对象JSON 字符串转换为 Java 对象使用 ContextValueFilter 配置 JSON 转换使用 NameFilter 和 SerializeConfigFastjson 处理日期F…...

绝对零基础的C语言科班作业(期末模拟考试)(十道编程题)

编程题&#xff08;共10题&#xff1b; 共100.0分&#xff09;&#xff08;给猛男妙妙屋更一篇模拟考试&#xff09;模拟1&#xff08;输出m到n的素数&#xff09;从键盘输入两个整数[m,n], 输出m和n之间的所有素数。 输入样例&#xff1a;3&#xff0c;20输出样例&#xff1a;…...

按位与为零的三元组[掩码+异或的作用]

掩码异或的作用前言一、按位与为零的三元组二、统计分组1、map统计分组2、异或掩码总结参考资料前言 当a b 0时&#xff0c;我们能够很清楚的知道b是个什么值&#xff0c;b 0 - a -a&#xff0c;如果当a & b 0时&#xff0c;我们能够很清楚的知道b是什么值吗&#xf…...

C++基础篇(一)-- 简单入门

C 语言是在优化 C 语言的基础上为支持面向对象的程序设计而研制的一个通用目的的程序设计语言。在后来的持续研究中&#xff0c;C 增加了许多新概念&#xff0c;例如虚函数、重载、继承、标准模板库、异常处理、命名空间等。 C 语言的特点主要表现在两个方面&#xff1a;全面兼…...

前端整理 —— javascript 2

1. generator&#xff08;生成器&#xff09; 详细介绍 generator 介绍 generator 是 ES6 提供的一种异步编程解决方案&#xff0c;在语法上&#xff0c;可以把它理解为一个状态机&#xff0c;内部封装了多种状态。执行generator&#xff0c;会生成返回一个遍历器对象。返回的…...

Spring-注解注入

一、回顾XML注解 bean 配置 创建 bean public class Student { } 配置 xml bean <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSche…...

华为校招机试 - 攻城战(Java JS Python)

目录 题目描述 输入描述 输出描述 用例 题目解析 JavaScript算法源码 Java算法源码...

Docker入门

Docker一、何为DockerDocker是一个开源的应用容器引擎&#xff0c;基于GO语言并遵循从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后在发布到任何流行的Linux机器上&#xff0c;也可以实现虚拟化。容器是完全使…...

时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序)

时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序) 目录 时间序列分析 | CNN-LSTM卷积长短期记忆神经网络时间序列预测(Matlab完整程序)预测结果模型输出基本介绍完整程序参考资料预测结果 模型输出 layers = 具有以下层的 151 Layer 数组:...

【蒸滴C】C语言结构体入门?看这一篇就够了

目录 一、结构体的定义 二、结构的声明 例子 三、 结构成员的类型 结构体变量的定义和初始化 1.声明类型的同时定义变量p1 2.直接定义结构体变量p2 3.初始化&#xff1a;定义变量的同时赋初值。 4.结构体变量的定义放在结构体的声明之后 5.结构体嵌套初始化 6.结构体…...

第十三届蓝桥杯

这里写目录标题一、刷题统计&#xff08;ceil函数返回的是等值于某最小整数的浮点值&#xff0c;不强制转换回int就wa&#xff0c;没错就连和int整数相加都wa二、修剪灌木&#xff08;主要应看清楚会调转方向三、统计子矩阵&#xff08;前缀和滑动窗口⭐&#xff09;四、[积木画…...

消息队列mq

应用场景&#xff1a; 1、解耦 2、削峰填谷 3、异步处理 4、消息通讯 工作模式&#xff1a; 一个消息只能被消费一次&#xff08;订阅模式除外&#xff09;&#xff0c;消费者接受到消息会回调业务逻辑&#xff0c;消费逻辑写在回调函数里面。 1、简单模式&#xff1a;一个生产…...

Qwen3-4B写作大师优化技巧:3个提示词方法让AI输出质量翻倍

Qwen3-4B写作大师优化技巧&#xff1a;3个提示词方法让AI输出质量翻倍 1. 为什么提示词对Qwen3-4B如此重要 Qwen3-4B-Instruct不是普通的文本生成模型&#xff0c;而是一个具备深度推理能力的AI写作伙伴。与基础模型不同&#xff0c;它经过专门的指令微调&#xff08;Instruc…...

RHEL 8 部署 Oracle 数据库

目录 一、目标与环境 二、Oracle安装包下载 官方下载地址&#xff08;推荐&#xff09; 三、安装详细步骤 第一阶段&#xff1a;系统准备&#xff08;全部以root用户操作&#xff09; 1. 安装必要的依赖包 2. 创建Oracle用户和组 3. 创建目录结构并设置权限 4. 配置系统…...

终极指南:Heynote版本更新与数据迁移全攻略

终极指南&#xff1a;Heynote版本更新与数据迁移全攻略 【免费下载链接】heynote A dedicated scratchpad for developers 项目地址: https://gitcode.com/gh_mirrors/he/heynote Heynote作为开发者专用的即时记事本工具&#xff0c;定期更新能带来更稳定的性能和更丰富…...

流处理 vs 批处理:大数据时代的技术选择指南

流处理 vs 批处理&#xff1a;大数据时代的技术选择指南 关键词&#xff1a;流处理、批处理、大数据、实时计算、离线计算、延迟、吞吐量 摘要&#xff1a;在大数据时代&#xff0c;数据处理就像一场永不停歇的"数据马拉松"。流处理和批处理是两种最核心的技术方案&a…...

OpenLiteSpeed实战踩坑记录:为什么我最终回归了LNMP环境?

OpenLiteSpeed实战反思&#xff1a;为什么复杂WordPress环境更适合LNMP&#xff1f; 最近在技术社区里&#xff0c;OpenLiteSpeed被频繁提及&#xff0c;尤其是它宣称的高性能PHP处理能力吸引了不少WordPress站长的注意。作为一个长期使用LNMP环境的开发者&#xff0c;我也被这…...

零代码部署YOLOv9:官方镜像5分钟快速上手,实测效果惊艳

零代码部署YOLOv9&#xff1a;官方镜像5分钟快速上手&#xff0c;实测效果惊艳 1. 为什么选择YOLOv9官方镜像 目标检测领域的最新突破YOLOv9已经发布&#xff0c;但很多开发者在尝试部署时遇到了各种环境配置问题。这个官方预构建的镜像解决了三大核心痛点&#xff1a; 环境配置…...

04.如何在Allegro X中导入机械结构尺寸图纸和注意事项 I Allegro X PCB设计小诀窍系列

大家好&#xff01;在进行PCB设计时&#xff0c;我们经常需要根据机械结构工程师提供的**DXF图纸**来确定板框形状、定位孔位置、元器件高度限制区域等关键信息。如果手动在PCB中重新绘制这些几何图形&#xff0c;不仅耗时&#xff0c;还容易与结构图纸产生偏差——哪怕零点几毫…...

CMW500实战指南:BLE射频关键指标测试与优化

1. CMW500与BLE测试基础入门 第一次接触CMW500进行BLE射频测试时&#xff0c;我被这个"黑盒子"复杂的按键界面吓到了。但实际用下来发现&#xff0c;只要掌握几个关键操作&#xff0c;就能快速完成BLE设备的核心指标验证。CMW500作为罗德与施瓦茨的旗舰级测试仪&…...

个人作品集展示的最佳实践与工具选择

对于设计师、摄影师、插画师等创意人士而言&#xff0c;个人作品集是展示专业能力的重要窗口。 如何将作品以最佳方式呈现给潜在客户或雇主&#xff0c;是每个创意人士都需要认真思考的问题。 PDF格式因其跨平台兼容性和排版稳定性&#xff0c;成为作品集展示的首选格式。 它能…...

敏捷开发实战指南:提升团队效率的5个秘诀

在快速迭代的敏捷开发中&#xff0c;测试团队既是质量守门人&#xff0c;也是流程加速器。本文从软件测试从业者的专业视角&#xff0c;提炼五个经过实战验证的高效实践&#xff0c;助力团队突破协作瓶颈、缩短反馈周期&#xff0c;实现质量与速度的双重提升。秘诀一&#xff1…...