houseInfoArray=[]
爬取海淀区全部的数据
for i in range(1,2):
res = requests.get(‘http://bj.lianjia.com/ershoufang/haidian/pg’+str(i),headers=headers)
使用html筛选器
soup = BeautifulSoup(res.text, ‘html.parser’)
#print soup
网站每页呈现30条数据,依次爬取详细的信息
for j in range(0,30):
获取房屋详细信息的链接
url = soup.select(‘.sellListContent’)[0].select(‘.img’)[j].get(‘href’, None)
解析每个房子的详细信息
接下来,获取到每个房子的URL了,就是爬取URL对应的数据并对一个个的房屋获取其详细信息了,思路同上,也是根据源码获取相关的标签,然后获取数据,这里将每个房子的信息保存在字典中。直接贴代码:
def gethouseInfo(url):
“”"
获取房子的详细信息
:param url: 子地址
:param soup: 父XML,可以从中获取小区信息
:return:
“”"
返回的数据类型为字典
info= {}
请求子页面
res = requests.get(url)
提取子域名内容,即页面详细信息
soup=BeautifulSoup(res.text,‘html.parser’)
小区信息
communityName = soup.select(‘.overview’)[0].select(‘.content’)[0].select(‘.communityName’)[0].select(‘.info’)[0].get_text()
info[‘communityName’] = communityName