爬虫实践--租房信息查找

  起因:最近需要找房子,选择58同城找个人房源发现一个个找太费事,想着先抓取房源存档后慢慢检索;

  文件存放格式如下

 设计思路

 1.确定文件格式,分2个sheet,按照1室、2室划分

 2.选择范围北蔡地区【这里可设置为变量,随意替换成其它地区】

 3.抓取源码【选择分页中前3页,太久了信息作用不大】

 4.分析源码找出抓取信息所在区块、调式区块内需要的一个个字段

 5.将字段组合成list,每个list元素为一个元组()

 6.调用自己编写的excel写入模块,写入信息、存档

 调式遇到的坑

 1.网站针对请求有限制,多了会要求输入验证码【可加入请求头、请求间隔延长】

 2.字段信息需要在当前页面拿到url,再请求一次拿到源码,有点杂乱

 3.get_text() 获取区块的文字,文字间包含多个空格、换行,需要strip()去除首尾、re.sub(' +', ' ',string)去除中间多个空格为一个空格

 4.字符串切割始终是难点 split(u'年')[0] 针对中文字符切记要带上u 

 5.抓取的字段需要转成unicode()

unicode(x.find_all(class_="positionInfo")[0].get_text()).strip().split(u'年')[0].split(")")[1].strip()

6.用到最多的方法
find_all(class_="house-update-info c_888 f12")[0] 【查找所有类为house-update-info c_888 f12 形成一个list】
find_all("li") 【查找所有<li>标签元素】
get_text() 文字读取
.a['href'] url读取 【下层级元素链接用'.'  比如.span  .p  .em】
["data-price"] 属性读取

原文地址:https://www.cnblogs.com/aeip/p/zufangzhuaqu.html