爬取房屋标题、房屋标签(如:必看好房)、总价、单价、所在位置(如:区域/小区)、房屋格局(几室几厅)、房屋面积、朝向、装修状态、楼层、楼栋类型(板楼/塔楼等)、是否近地铁、免税类型(房本满五年等)、是否随时看房
,并写入csv文件。
核心功能模块说明
1. 数据结构定义(items.py)
定义了需要爬取的房源信息字段,包括:
基本信息:标题、标签、总价、单价、位置
房屋属性:格局、面积、朝向、装修状态、楼层、年份、类型
附加信息:是否近地铁、免税情况、是否随时看房
2. 爬虫实现(tiantongyuan.py)
主要爬虫逻辑实现,功能包括:
分页爬取:通过构造 URL 实现多页爬取,默认爬取前 30 页
数据提取:使用 XPath 表达式从页面中提取各类房源信息
数据清洗:对提取的原始数据进行清洗处理,去除空白字符
异常处理:包含完善的异常捕获和日志记录
3. 数据存储(pipelines.py)
实现了将爬取到的房源数据保存到 CSV 文件的功能:
初始化时创建 CSV 文件并写入表头
每爬取一个房源就实时写入文件,避免内存占用过大
记录爬取数量,每 10 条打印一次日志
爬虫结束时输出总爬取数量
4. 项目配置(settings.py)
关键配置说明:
并发请求设置:CONCURRENT_REQUESTS_PER_DOMAIN = 1,DOWNLOAD_DELAY = 2.0,降低请求频率,避免被反爬
请求头配置:包含 Cookie、User-Agent 等信息,模拟浏览器请求
日志级别:设置为 DEBUG,方便调试
管道配置:启用自定义的 CSV 存储管道