在许多电商和互联网金融的公司为了更好地服务用户,他们需要爬虫工程师对用户的行为数据进行搜集、分析和整合,为人们的行为选择提供更多的参考依据,去服务于人们的行为方式,甚至影响人们的生活方式。我们的scrapy框架就是爬虫行业使用的主流框架,房天下二手房的数据采集就是基于这个框架去进行开发的。
数据采集来源:‘房天下----全国二手房’
目标数据:省份名、城市名、区域名、房源介绍、房源小区、户型、朝向、楼层、建筑面积、建造时间、单价、楼盘链接
数据库设计:province、city、area、house四张表
爬虫spider部分demo:
获取省份、城市信息和链接
1 #获取省份名字,城市的链接url 2 def mycity(self,response): 3 #获得关键节点 4 links = response.css('#c02 > ul > li') 5 for link in links: 6 try: 7 province_name=link.xpath('./strong/text()').extract_first() 8 urllinks=link.xpath('./a') 9 for urllink in urllinks: 10 city_url=urllink.xpath('./@href').extract_first() 11 if city_url[-1]=='/': 12 city_url=city_url[:-1] 13 yield scrapy.Request(url=city_url,meta={'province_name':province_name,'city_url':city_url},callback=self.area) 14 except Exception: 15 pass
获取区域的链接url和信息
获取楼盘房源的信息
此时就可以运行scrapy crawl+爬虫名,我们就可以爬取到网站的信息,但是我们如何使用这些数据呢,那就要通过pipelines将数据插入到数据库中。
爬虫pipelines部分demo:
采集数据效果: