重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍了python如何爬取Q房网数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
10年积累的成都网站设计、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有长垣免费网站建设让你可以放心的选择与我们合作。
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
爬取Q房网数据
https://shenzhen.qfang.com/newhouse
爬取目标数据:
小区名字
售房状态
房屋面积
户型
开盘时间
交房时间
楼盘地址
售价
预计总价
emmmm,我看看就行了,买不起买不起
python 3.6.5
pycharm
导入工具
import requests import parsel import csv
解析网页,爬取数据
for page in range(1, 84): print('===============================正在爬取第{}页的数据================================================='.format(page)) url = 'https://shenzhen.qfang.com/newhouse/list/n{}'.format(page) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' } response = requests.get(url=url, headers=headers) selector = parsel.Selector(response.text) lis = selector.css('.list-result li') dit = {} for li in lis: title = li.css('.list-main-header a em::text').get() # 名字 dit['标题'] = title status = li.css('.list-main-header i::text').get() # 是否在售 dit['房产状态'] = status space = li.css('.list-main div:nth-child(1) .space span::text').get() # 售房面积 dit['售房面积'] = space type_list = li.css('.list-main.fl p:nth-child(3) span a::text').getall() # 户型 type_str = '|'.join(type_list).strip().replace('\r\n', '').replace(' ', '') # 户型 dit['户型'] = type_str kp_time = li.css('.new-house-info > div:nth-child(2) > p.space.fl.clearfix > span::text').get() # 开盘时间 dit['开盘时间'] = kp_time cs_time = li.css('.new-house-info > div:nth-child(2) > p:nth-child(3)> span::text').get() # 出售时间 dit['出售时间'] = cs_time address = li.css('.list-main a:nth-child(3)::text').get() # 地址 if not address == None: address = address.strip() else: address = None dit['地址'] = address Price = li.css('.list-price .bigger .amount::text').get() # 售价 dit['售价'] = Price hj_Price = li.css('.list-price .smaller::text').get() # 预计总价 dit['预计总价'] = hj_Price
保存数据
f = open('房产数据.csv', mode='a', encoding='utf-8-sig', newline='') csv_writer = csv.DictWriter(f, fieldnames=['标题', '房产状态', '售房面积', '户型', '开盘时间', '出售时间', '地址', '售价', '预计总价']) csv_writer.writeheader() print(dit)
运行代码,效果如下图
感谢你能够认真阅读完这篇文章,希望小编分享的“python如何爬取Q房网数据”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!