位置: 编程技术 - 正文

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爬虫代码怎么写)

  • 财务软件交多少钱印花税
  • 涉税专业服务是做什么的
  • 增值税专用发票可以开电子发票吗
  • 回购股票注销股本,股价大涨案例
  • 过次页的金额怎么来的
  • 产成品入库金额和售价一样嘛
  • 普通发票验旧后当月能作废吗
  • 善意取得增值税专用发票如何处理
  • 食堂收支情况
  • 营改增是什么时候提出的
  • 固定资产如何抵扣企业所得税
  • 租赁房屋房产税
  • 出口抵减内销产品
  • 企业办理跨境人民币收付需要办理名录登记吗
  • 公司的钱怎么转出来
  • 误餐补助需要发票做账吗
  • 购买免税苗木抵税分录
  • 城建附加减半征收文件
  • 企业搬迁至外地怎么办理
  • 免费样品销售给客户计入什么科目
  • vnisedit 打包
  • PHP:xml_error_string()的用法_XML解析器函数
  • php解构
  • 以专利权出资,能否使用专利权
  • .fas文件病毒
  • 公司从其他公司借个钱怎么做账
  • 事业单位无职务人员称什么
  • passwd -s命令
  • 租入固定资产改良支出属于资本性支出吗
  • 提坏账准备的会计分录 2022
  • vuexl
  • php 错误和异常处理
  • php 多进程
  • 金蝶k3明细账如何查询
  • php fgetc
  • 分公司负责人如何开展工作的
  • 刷pos机的如何记会计分录
  • 往年补录情况
  • 不征税收入和免税收入有哪些项目
  • 营业外收入汇算清缴时也得计入收入
  • 预缴税款计算表填0.01行吗
  • mysql数据库连接方式
  • 个税申报错误已经扣税款怎么处理
  • 货物已到发票未开具
  • 营业成本怎么理解
  • 酒店客房收入如何分配
  • 善意取得增值税专用发票所得税
  • 医院外聘专家费用报销流程
  • 扶贫小额信贷分贷统还违规吗
  • 应付职工薪酬账户贷方登记的是
  • 国外公司与国内公司签约
  • 购买办公楼分期合同
  • 工程未竣工预付款怎么办
  • 小规模红冲发票收入正数税额负数
  • 公对公转账必须签合同吗
  • windows7的插孔设置在哪
  • 解析包出现错误无法安装怎么办
  • 服务器centos6.8安装教程
  • 开机f8显示英文字母
  • win8ui
  • win8系统怎么搜索文件
  • win10桌面底部
  • 深入了解linux内核
  • find命令支持哪些查找方式
  • Windows8 PrintScreen屏幕截图如何保存到桌面上
  • suse linux 12 sp5
  • JavaScript的instanceof运算符学习教程
  • jquery 插件写法
  • python django事务transaction源码分析详解
  • for循环取数据
  • ruby元编程第二版
  • 那些so 叼的android studio 插件
  • 招聘退役士兵减刑政策
  • 新收入准则租赁业务
  • 海南省地方税务局公告2017年第2号
  • 常州税务局举报网站
  • 种花需要
  • 郑州市区税务局
  • 怎么申请浙江长沙健康码
  • 土地增值税采取什么税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设