爬取广州所有停车场数据(Python)(并行加速版本)

标签: python 爬虫 多进程 并行
30人阅读 评论(0) 收藏 举报
分类:

之前做过这个的单进程版本。这次使用多进程来实现~
爬取广州所有停车场数据(Python)

大家可以对比着看一下,在原来的单进程爬虫的基础进行改进而得到的产品。

import requests
import os
import json
import multiprocessing
import time


def getAllJson(Session, data, headers):
    url = 'http://219.136.133.163:8000/Pages/Commonpage/AsyGetData.asmx/GetParkList'
    res = Session.post(url, data=data, headers=headers)
    res.encoding = 'utf-8'
    with open('./Data/' + data['cp'] + '.json', 'w') as f:
        json.dump(res.json(), f, ensure_ascii=False)


if __name__ == '__main__':
    st = time.time()
    headers = {
        'X-Requested-With': 'XMLHttpRequest',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
    }
    pageSession = requests.Session()
    url = 'http://219.136.133.163:8000/Pages/Commonpage/AsyGetData.asmx/GetParkList'
    pageSession.get(url, headers=headers)
    data = {
        'cp': '1',
        'ps': '10',
        'kw': '',
        'lon': 'undefined',
        'lat': 'undefined',
        'type': 'undefined'
    }
    if not os.path.exists('./Data'):
        os.mkdir('./Data')
    p_list = []

    for i in range(318):
        data['cp'] = str(i + 1)
        p = multiprocessing.Process(target=getAllJson, args=(pageSession, data, headers))
        p.start()
        p_list.append(p)
        if len(p_list) == 16:
            for p in p_list:
                p.join()
            p_list = []
    et = time.time()
    print(et - st)
查看评论

爬取广州所有停车场数据(Python)

目标地址 http://www.gzjt.gov.cn/gzjt/tcc/list_tt.shtml 上面url是广州交通的地址。朋友想要我帮忙去抓到所有的广州停车场所在的详细地址。 一开始去查这...
  • a19990412
  • a19990412
  • 2018-04-05 20:31:23
  • 23

Python爬虫实战之爬取链家广州房价_01简单的单页爬虫

思路介绍爬取链家广州所有小区信息、在售楼盘及所有历史成交记录,对于超过100个页面的信息,采用曲线爬取的方式,先爬每个小区,然后爬每个小区的在售楼盘及成交记录,后期将进行相应更新,进一步研究Cooki...
  • padluo
  • padluo
  • 2017-02-22 15:56:35
  • 777

Python爬虫实战之爬取链家广州房价_03存储

问题引入系列目录:Python爬虫实战之爬取链家广州房价_01简单的单页爬虫Python爬虫实战之爬取链家广州房价_02把小爬虫变大这一小节主要讲一下前面一直没有实现的存储,存储主要分两大类:文件和数...
  • padluo
  • padluo
  • 2017-03-02 09:01:07
  • 991

广州链家二手房数据Excel(2017.11.29)

  • 2017年12月19日 17:58
  • 1.84MB
  • 下载

广州链家二手房数据(2017.11.29)

  • 2017年11月29日 17:54
  • 3.44MB
  • 下载

广州火车站/东站接送客攻略 停车需谨慎

轉自:http://www.pcauto.com.cn/qcbj/286/2868243.html ● 广州火车站接送攻略   广州火车站相当有历史了,因此规划得并不是很好,加上地...
  • MasterLonely
  • MasterLonely
  • 2014-12-08 09:21:03
  • 2472

python 3.3 爬取网页信息 小例

# -*- coding:gb2312 -*-     import urllib.request source_stram = urllib.request.urlopen("http://www....
  • keenweiwei
  • keenweiwei
  • 2013-06-06 16:20:46
  • 6585

全国地铁数据爬取-python

介绍爬取全国地铁站点、地铁线路和发车时刻的方法。一、两种爬取方法概述 (一)html页面爬取   1、 为了收集全国地铁线路的发车时刻信息,刚开始尝试的方法如下:    (1)找到每个城市的地铁官网,...
  • jiang_qun
  • jiang_qun
  • 2018-03-03 17:31:33
  • 274

Python3爬虫实战:爬取大众点评网某地区所有酒店相关信息

历时一下午加一晚上,终于把这个爬虫代码写好,后面还有很多想完善的地方(譬如数据存储用redis、使用多线程加快速度、爬取图片、细分数据等等),待有空再做更改,下面是具体的步骤与思路: 工具:PyCha...
  • drdairen
  • drdairen
  • 2016-04-13 21:32:13
  • 9982

用 Python requests库 爬取网页数据

一、爬取学者网数据1、requests 库的获取 1.1 在终端中输入 pip install requests1.2 在PyCharm中添加requests库 1.2.1 在file中选取Def...
  • qq_21046135
  • qq_21046135
  • 2017-04-25 20:46:44
  • 1853
    个人资料
    持之以恒
    等级:
    访问量: 3万+
    积分: 2551
    排名: 1万+
    文章存档
    最新评论