Python爬虫实战爬取租房网站2w+数据-链家上海区域信息(超详细)

本文详细介绍了如何使用Python爬虫抓取链家网站上海区域的租房信息,包括URL分析、页面元素提取、数据处理等步骤,最终成功获取约2.3w条数据。
摘要由CSDN通过智能技术生成

Python爬虫实战爬取租房网站-链家上海区域信息(过程超详细)

内容可能有点啰嗦 大佬们请见谅 后面会贴代码 带火们有需求的话就用吧
正好这几天做的实验报告就直接拿过来了,我想后面应该会有人用的到吧.
自己学着分析网址的话链家这个租房网站其他地区的也可以爬大家不妨试试
任务目的:从链家上爬取上海地区的租房信息

1.url分析

https://sh.lianjia.com/zufang/这是网站的首页
在这里插入图片描述
网站的第二页https://sh.lianjia.com/zufang/pg2/#contentList
此时通过对比,可以发现将/pg2/中的2换成1那时网站内容就是第一页的内容,后面的#contentList对网页内容没有影响这里我们就直接删除了。
我这里拿静安区为例
首页网址:https://sh.lianjia.com/zufang/jingan/。第二页: https://sh.lianjia.com/zufang/jingan/pg2/

2.页面元素分析

(1) 使用chrome浏览器的检查功能,点击 在这里插入图片描述左侧的小箭头来分析页面。
我们将鼠标放到第一个房源信息那,可以看到里面的内容都是在content__list—item这个类里面在这里插入图片描述
第二个房源的话也是在这个类里面,后面的内容有些不同而已
在这里插入图片描述
我们往上翻发现这些房源信息都在content__list这个类中
在这里插入图片描述
所以我们要的信息从这里面获取就行不需要再从整个页面中查找,先找大标签(这里就是这个content__list),再找其中的小便签。
我们这里把要获取的数据都放入infos里面

infos = soup.find('div',{
   'class':'content__list'}).find_all('div',{
   'class':'content__list--item'})`

(2) 分析小标签里要提取的元素;
拿名称来举例,它是在之前找的小便签里的content__list–item–title twoline类的a标签中
在这里插入图片描述

name = info.find('p',
                 {
   'class': 'content__list--item--title twoline'}).find(
    'a').get_text().strip()

我们只需获取里面的文本信息就行了所以这里我们用到了get_text()函数,strip()用来消除左右空格
当然,我们发现content__list–item–title twoline类是在content__list–item—main里面的,这里我们可以在检查里面用ctrl+f来搜索看看content__list–item—main类里是否有第二个content__list–item–title twoline类,如果重复就要另外分析。这边并没有第二个content__list–item–title twoline类,就不需要考虑了。
(1of30一个页面30个信息还有29个content__list–item–title twoline是下面房子里面的)
在这里插入图片描述
价格这边同样的方法不做赘述

获取具体地址,面积,门朝向以及户型的时候我们发现它是在同一个类里面,它们用’ / '做了分隔。这边我们可以用split()函数来切割,这样就能解决这个问题。
在这里插入图片描述
我们将文本放入变量mix中

mix = info.find('p', {
   'class': 'content__list--item--des'
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值