背景
个人觉得最影响合租居住体验因素就是室友,自如有个很好的点就是可以看到房子里其他室友的性别、星座和职业。但是却没有相关的筛选功能,于是便自己写了个爬虫,把整个深圳市的自如在租房源数据爬了个遍,把自己所关心的小区位置,地铁距离、租金、室友和楼层面积等信息收集起来。
大致效果如下,可以很方便得筛选自己喜欢的房子。
最近有了解到高德API有路径规划,还可以将房子和到公司的路程进行通勤规划。
用到包
- 爬取数据:Requests, BeautifulSoup
- OCR图像识别:Pytesseract,Tesseract-OCR(爬自如的一个坑点,自如的租金是由一个随机数字排列再重新组合的)
- 将数据自动生成Excel:Pandas
- 通勤规划:高德API(需要去高德开放中心申请key才能使用)
解析自如页面信息
深圳自如首页的URL是“http://sz.ziroom.com/z/”,同理,上海的URL是“http://sh.ziroom.com/z/”。后面的p1、p2指的是页码,通过一个for就可以遍历整个深圳自如的租房。
def get_page_info(page_num):
zr_url = 'http://sz.ziroom.com/z/p' + str(page_num) + '/'
response = requests.get(zr_url).text
zr_soup = BeautifulSoup(response, 'html.parser')
if __name__ == '__main__':
for page_num in range(1,max_page_num+1):
get_page_info(page_num)
to_excel()
找到URL,用BeautifulSoup解析出来就好了。
解析房源信息
除了租金外,其他信息都是常规选择好节点提取信息就好了。
- 房源详情url
房源的URL有很多出节点都有,随便找个节点解析出来就好了。
def