位置: 编程技术 - 正文

Python实现并行抓取整站40万条房价数据(可更换抓取城市)(并行 python)

编辑:rootadmin

推荐整理分享Python实现并行抓取整站40万条房价数据(可更换抓取城市)(并行 python),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python 并行执行多个函数,并行 python,python并发执行shell,python并行编程手册,python 并行执行多个函数,python 并行执行多个函数,python并发和并行,python 并行执行多个函数,内容如对您有帮助,希望把文章链接给更多的朋友!

写在前面

这次的爬虫是关于房价信息的抓取,目的在于练习万以上的数据处理及整站式抓取。

数据量的提升最直观的感觉便是对函数逻辑要求的提高,针对Python的特性,谨慎的选择数据结构。以往小数据量的抓取,即使函数逻辑部分重复,I/O请求频率密集,循环套嵌过深,也不过是1~2s的差别,而随着数据规模的提高,这1~2s的差别就有可能扩展成为1~2h。

因此对于要抓取数据量较多的网站,可以从两方面着手降低抓取信息的时间成本。

1)优化函数逻辑,选择适当的数据结构,符合Pythonic的编程习惯。例如,字符串的合并,使用join()要比“+”节省内存空间。

2)依据I/O密集与CPU密集,选择多线程、多进程并行的执行方式,提高执行效率。

一、获取索引

包装请求request,设置超时timeout

一级位置:区域信息

二级位置:板块信息(根据区域位置得到板块信息,以key_value对的形式存储在dict中)

以dict方式存储,可以快速的查询到所要查找的目标。-> {'朝阳':{'工体','安贞','健翔桥'......}}

三级位置:地铁信息(搜索地铁周边房源信息)

Python实现并行抓取整站40万条房价数据(可更换抓取城市)(并行 python)

将所属位置地铁信息,添加至dict中。 -> {'朝阳':{'工体':{'5号线','号线' , '号线'},'安贞','健翔桥'......}}

对应的url: {'朝阳':{'工体':{'5号线'}}}

参数:

——  r-朝阳

——  b-工体

——  w-5号线

组装参数: '板块', '地铁', '标题', '位置', '平米', '户型', '楼层', '总价', '单位平米价格']

四、分配任务,并行抓取

对任务列表进行分片,设置进程池,并行抓取。

通过设置进程池并行抓取,时间缩短为单进程抓取时间的3/1,总计时间3h。

电脑为4核,经过测试,任务数为3时,在当前电脑运行效率最高。

五、将抓取结果存储到excel中,等待可视化数据化处理

附上源码

总结:

当抓取数据规模越大,对程序逻辑要求就愈严谨,对python语法要求就越熟练。如何写出更加pythonic的语法,也需要不断学习掌握的。

标签: 并行 python

本文链接地址:https://www.jiuchutong.com/biancheng/382436.html 转载请保留说明!

上一篇:从零开始学Python第八周:详解网络编程基础(socket)(从零开始学公文写作)

下一篇:通过Python爬虫代理IP快速增加博客阅读量(python爬虫代码怎么写)

  • 其他权益工具投资科目编码
  • 房地产开发企业资质管理规定
  • 出口企业何时选择免(征)税申报方式?
  • 购销合同印花税最新政策2023
  • 递延所得税负债大白话解释
  • 一般纳税人劳务派遣
  • 有营业额有成本怎么算成本占比
  • 承兑汇票可以随便给人看吗
  • 股东归还公司借款,应该记什么科目
  • 电子承兑汇票贴现流程
  • 利润表收入含其他收入吗怎么填
  • 债券置换债务
  • 冲借款的凭证怎么做
  • 费用发票的种类
  • 劳动仲裁是怎样仲裁公司的
  • 发票跨月还能重开吗
  • 小规模纳税人日用品增值税税率
  • 专用发票不抵扣联可以当普票用吗?
  • 失控发票的账务处理
  • 所有者权益合计是负数是什么意思
  • 保险公司买保险和银行买保险有什么区别
  • 空白发票怎么用
  • 协会收取会员单位的会务费怎么做账
  • 怎么激活win10密钥
  • 预付的货款的发票在哪里
  • 投资入股的无形资产要摊销吗
  • 少收的应收款和应付账款
  • windows更新暂停怎么恢复
  • 汇票本票支票的相同点和不同点
  • 病假工资是工资吗
  • 有限责任公司股东会的职权有哪些?
  • 辛华达瀑布,加拿大贾斯珀国家公园 (© Schroptschop/Getty Images)
  • 阿尔比恩洞的级别
  • 公司代缴个税在工资里工资表怎么填
  • 表单建模
  • php数据统计分析
  • php使用什么开发工具
  • 销售费用凭证
  • pytorch训练yolov3
  • 转让金融商品应交增值税计算公式
  • unlinkhist.dat怎么删除
  • 只有进项税没有销项税如何报税
  • 以前年度的成本忘了结转然后怎么办
  • 小微企业具体指
  • mysql临时表什么时候销毁
  • 进项税认证抵扣流程
  • 税局代个人开增值税普通票样板
  • 在建工程科目的内容
  • 土地增值税扣除项目税金包括哪些
  • 公墓造价成本
  • 发行股票的好处和坏处
  • 应付账款多怎么办
  • 国有独资企业是有限责任公司吗
  • 收到代持股权的账务处理
  • 残疾人就业保障金征收使用管理办法
  • 简易计税项目可以抵扣进项税吗?
  • 税收分类编码怎么选
  • sql数据库死锁产生的原因及解决方案
  • 数据库中自动增长
  • 脱机文件怎么办
  • centos7如何设置中文
  • win7虚拟内存怎么设置
  • win10弹出提示
  • winxp安卓
  • xp启动加速
  • u盘制作iso镜像文件启动
  • win8安装itunes
  • 详解linux中systemd命令的运行级别与其常见应用
  • win10 固态
  • win10标准用户权限
  • 着色器模型
  • dos命令不能执行怎么回事
  • 动态规划之矩阵连乘
  • jq cookie
  • python t()
  • python django
  • android动画实现方式
  • 应缴财政专户款属于资产类吗
  • 全国税务稽查会议
  • 工商变更与税务变更为什么不能同步
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设