# ==========导 包=============
import requests
from bs4 import BeautifulSoup
import numpy as np
import requests
from requests.exceptions import RequestException
import pandas as pd
# =====step_1 : 指 定 url=========
url = 'https://gz.fang.lianjia.com/ /'# =====step_2 : 发 起 请 求 :======
# 使 用 get 方 法 发 起 get 请 求 , 该 方 法 会 返 回 一 个 响 应 对 象 。 参 数 url 表 示 请 求 对 应 的 url
response = requests.get(url=url)# =====step_3 : 获 取 响 应 数 据 :===
# 通 过 调 用 响 应 对 象 的 text 属 性 , 返 回 响 应 对 象 中 存 储 的 字 符 串 形 式 的 响 应 数 据 ( 页 面 源 码数 据 )
page_text = response.text# ====step_4 : 持 久 化 存 储=======
with open('广州房价 . html ', 'w', encoding='utf -8') as fp:fp.write(page_text)
print(' 爬 取 数 据 完 毕 !!!')
# ==================导入相关库==================================# =============读取网页=========================================
def craw(url, page):try:headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3947.100 Safari/537.36"}html1 = requests.request("GET", url, headers=headers, timeout=10)html1.encoding = 'utf-8'  # 加编码,重要!转换为字符串编码,read()得到的是byte格式的html = html1.textreturn htmlexcept RequestException:  # 其他问题print('第{0}读取网页失败'.format(page))return None# ==========解析网页并保存数据到表格======================
def pase_page(url, page):html = craw(url, page)html = str(html)if html is not None:soup = BeautifulSoup(html, 'lxml')"--先确定房子信息,即li标签列表--"houses = soup.select('.resblock-list-wrapper li')  # 房子列表"--再确定每个房子的信息--"for j in range(len(houses)):  # 遍历每一个房子house = houses[j]"名字"recommend_project = house.select('.resblock-name a.name')recommend_project = [i.get_text() for i in recommend_project]  # 名字 英华天元,斌鑫江南御府...recommend_project = ' '.join(recommend_project)# print(recommend_project)"类型"house_type = house.select('.resblock-name span.resblock-type')house_type = [i.get_text() for i in house_type]  # 写字楼,底商...house_type = ' '.join(house_type)# print(house_type)"销售状态"sale_status = house.select('.resblock-name span.sale-status')sale_status = [i.get_text() for i in sale_status]  # 在售,在售,售罄,在售...sale_status = ' '.join(sale_status)# print(sale_status)"大地址"big_address = house.select('.resblock-location span')big_address = [i.get_text() for i in big_address]  #big_address = ''.join(big_address)# print(big_address)"具体地址"small_address = house.select('.resblock-location a')small_address = [i.get_text() for i in small_address]  #small_address = ' '.join(small_address)# print(small_address)"优势。"advantage = house.select('.resblock-tag span')advantage = [i.get_text() for i in advantage]  #advantage = ' '.join(advantage)# print(advantage)"均价:多少1平"average_price = house.select('.resblock-price .main-price .number')average_price = [i.get_text() for i in average_price]  # 16000,25000,价格待定..average_price = ' '.join(average_price)# print(average_price)"总价,单位万"total_price = house.select('.resblock-price .second')total_price = [i.get_text() for i in total_price]  # 总价400万/套,总价100万/套'...total_price = ' '.join(total_price)# print(total_price)# =====================写入表格=================================================information = [recommend_project, house_type, sale_status, big_address, small_address, advantage,average_price, total_price]information = np.array(information)information = information.reshape(-1, 8)information = pd.DataFrame(information, columns=['名称', '类型', '销售状态', '大地址', '具体地址', '优势', '均价', '总价'])information.to_csv('广州房价.csv', mode='a+', index=False, header=False)  # mode='a+'追加写入print('第{0}页存储数据成功'.format(page))else:print('解析失败')# ==================双线程=====================================
import threadingfor i in range(1, 100, 2):  # 遍历网页1-101url1 = "https://gz.fang.lianjia.com/loupan/pg" + str(i) + "/"url2 = "https://gz.fang.lianjia.com/loupan/pg" + str(i + 1) + "/"t1 = threading.Thread(target=pase_page, args=(url1, i))  # 线程1t2 = threading.Thread(target=pase_page, args=(url2, i + 1))  # 线程2t1.start()t2.start()

Python爬取房价相关推荐

  1. 用 python 爬取房价信息

    这是我们python课程要求我们制作一个项目,用python爬取结果并作数据展示.我们使用requests的方法对房价的信息做了爬取,一下就是我们所爬取的网页 我们做这个项目主要分为以下几个步骤 1 ...

  2. 利用python爬取房价

    ​公众号二维码 爬取房价网站:(安居客)https://zb.fang.anjuke.com/loupan/all/ 由于该网站每隔一段时间需要进行验证(反爬虫),所以我们为了防止我们爬取信息的时候出 ...

  3. 利用Python爬取房价信息(附代码)

    大家好,我是带我去滑雪,每天教你一个小技巧!住房问题从古到今一直备受人们关注.从老子谈到的"安居乐业",再到诗人杜甫所描绘的"安得广厦千万间,大庇天下寒士俱欢颜" ...

  4. 四平方和python_成都房价现在多少?和北京差距很大吗?Python爬取了四万套房源!...

    作为一个技术人员,决定用技术解决这个疑问.我们用Python爬取了贝壳网上4万多套的成都在售房源,告诉你最真实的成都房价. 爬虫工作原理 在贝壳网上,成都的在售房源按照区域与地铁线这两个方式做了划分, ...

  5. python爬取分析深圳二手房房价

    刚入门学习Python爬虫,因为后边将会去深圳发展,所以练习了一个用python爬取深圳房价进行可视分析的项目,希望有所帮助. 好!进入正题! 我选择爬取的是链家网的深圳二手房网页,截图如下: 查看链 ...

  6. python爬取南京市房价_基于python的链家小区房价爬取——仅需60行代码

    简介 首先打开相关网页(北京链家小区信息). 注意本博客的代码适用于爬取某个城市的小区二手房房价信息. 如果需要爬取其他信息,可修改代码,链家的数据获取的基本逻辑都差不多. 效果展示 因为只需要60行 ...

  7. Python 爬取北京二手房数据,分析北漂族买得起房吗?(附完整源码)

    来源:CSDN 本文约3500字,建议阅读9分钟. 本文根据Python爬取了赶集网北京二手房数据,R对爬取的二手房房价做线性回归分析,适合刚刚接触Python&R的同学们学习参考. 房价高是 ...

  8. python爬房源信息_用python爬取链家网的二手房信息

    题外话:这几天用python做题,算是有头有尾地完成了.这两天会抽空把我的思路和方法,还有代码贴出来,供python的初学者参考.我python的实战经历不多,所以代码也是简单易懂的那种.当然过程中还 ...

  9. python爬取岗位数据并分析_Python年薪最高有50w|探秘全国近1600个Python岗位数据分析...

    原创 xinxin 菜鸟学Python 阅读本文大概需要3分钟 Python学了这么久,相信很多小伙伴都想知道钱途如何,全国各大城市招聘Python的岗位有多少,都招哪些职位,年薪如何等等,我爬取了拉 ...

最新文章

  1. 一行代码实现数据类型判断
  2. 2015/6/2站立会议(补发)
  3. mysql中decimal与float_MySQL中的float和decimal类型有什么区别
  4. java numberutil_NumberUtil
  5. Visual Studio 2015价格大幅下调
  6. 微软亚研院 CVPR 2021 9篇视觉研究前沿进展
  7. disruptor消费者模型
  8. pl sql入门比较好的书_面试官问你SQL?这几本书足够了
  9. 腾讯云服务器CentOS 7安装JAVA JDK并运行class文件
  10. java---servlet与filter的联系与区别
  11. LabelImg 图片标注工具 for Mac
  12. 卡巴斯基2017免费版发布下载:文件/网页杀毒、自动更新/保护
  13. 485集线器 4口485集线器 4口485 HUB
  14. 《疯狂Android讲义》第二版目录
  15. Numpy计算分位点及标记对应区间的下标
  16. 【R language】 清楚区分输出函数 cat、print、paste 区别 经验分享
  17. java中的boolean
  18. Ubuntu下bazel卸载与安装
  19. python爬取快手视频 多线程下载
  20. 杀毒软件引起共享打印机不能打印

热门文章

  1. 【限时删】刘*55页ppt大瓜,比项*醒的还要精彩!
  2. GO微服务实战之红包系统
  3. Free Code Camp 练习总结(五) ——Introduction to the ES6 Challenges ES6基本用法和基础知识
  4. java日志管理(slf4j+logback,tomcat)
  5. 对数型函数的值域与定义域为R(手机横屏交互操作)
  6. 陈慧琳“《江山美人》是我的代表作”
  7. MGRE结合OSPF
  8. 如何绘制三次B样条曲线
  9. Arista Networks推出400千兆以太网交换机
  10. 方法模板ThinkPHP3.1.2项目技巧三部曲 一