Python爬取链家租房信息
兴趣点:
继续练手,今天以石家庄市开发区为例,爬取所有链家在租房屋信息
这种静态网页我已经练了很多了,已经驾轻就熟了
目标网站:
传送门:https://sjz.lianjia.com/zufang/kaifaqu1/
爬虫大体思路与方法:
大体思路:
(1)找到翻页的规律(链家是静态网页,直接看浏览器上方显示的链接就能找到规律)
(2)获取我们想要的出租房的信息包括房源、面积、具体地址等,整理到列表中
(3)存储到本地
方法:
(1)getHTMLText(url):页面获取方法
(2)fillList(url,roomlist):把出租房的各种信息存入列表
(3)save(roomlist,path):读取列表内容存入本地txt文件
参数介绍:
(1)roomlist:存放出租房各种信息的列表
(2)path:本地存储路径
部分细节讲解:
(1)获取house_name的写法:
为什么不直接用 find 方法找a标签?如下:
house_name = house.find("a",class_ = "twoline").get_text().strip()
这样写获取不到内容,这个问题我也不清楚,也不是第一次遇到了,可能是a标签的特性
所以改成了下面这样:
house_name = house.find("p",class_ = "content__list--item--title").find("a").get_text().strip()
(2)为了使获取的内容更整齐,再次强调一下去空格:
str.strip():去除字符串两端的空格
str.replace(“旧字符”,“新字符”):把旧字符替换成新字符,用于替换内部的空格、制表符和换行符
(3)有个别出租房没有提供部分信息可能导致爬虫中断:
在循环外套一个try——except抛出即可
try:
for house in soup.find_all("div",class_ = "content__list--item"):
......
......
except:
print(