#11.13链家_二手房爬虫
##一、代码删减
以前以每个区3000个为界限,如:东城区有:3468 条数 > 3000,执行else部分
因为:最多只显示100页,也就是3000条
如:东城,3468 > 3000 ,只显示100页=3000条,想要显示更多,二级选项=》
A安定门安贞C朝阳门内朝阳门外崇文门D灯市口地安门东单东花市东四东直门G工体广渠门H和平里J建国门内建国门外交道口金宝街L六铺炕P蒲黄榆Q前门T陶然亭天坛X西单西罗园Y洋桥永定门Z左安门
上一次更新导致二级选项发生变化:
修改:
效果:速度更快,更方便阅读##二、链家更新
###1.watch_num
上次更新中,链家去掉了watch_num内容,如:52次带看
但只是注释了代码:# item['watch_num'] = house.xpath('div/div[4]/text()[2]').pop()
but,输出的文件依然带有watch_num,而且全为空
修改:删掉items.py : # watch_num = scrapy.Field()
删掉pipelines.py:
headers = ['title', 'community', 'model', 'area', 'focus_num', 'time', 'price', 'average_price', 'link', 'city', 'page', 'page_index', 'Latitude']###2.city
这次链家有修改了city标签
修改:city1 = contents.xpath('//span[@class="info"]/a[1]/text()').pop()###3.community
应该是上次链家更新更改了community标签位置,没有报错,but跟很早的不一,
如:
页面:国瑞城中区 - 崇文门
很早的:金鱼池东区
现在的:崇文门
应该是获取前面的:国瑞城中区
修改:item['community'] = house.xpath('div[1]/div[2]/div[1]/a[1]/text()').pop()###4.添加log
setting.py:
# 日志级别
LOG_LEVEL = "DEBUG"
# LOG_FILE = "./ershoufang.log"
注意:设置了LOG_FILE = "./ershoufang.log",在log文件输出,就不能在控制台输出
lianjia.py
import logging
log = logging.getLogger(__name__)5.设置时间
1. log输出按时间
import time
# 日志级别
LOG_LEVEL = "DEBUG"
LOG_TIME = time.strftime('%Y-%m-%d', time.localtime(time.time()))
LOG_FILE = "./ershoufang"+LOG_TIME+".log"
2.pipelines.py:
import time
currTime = time.strftime('%Y-%m-%d', time.localtime(time.time()))
self.file = open('ershoufang'+currTime+'.csv', 'w', encoding="utf-8")