百度迁徙爬虫工具:Baidu_migration_crawler
生活随笔
收集整理的這篇文章主要介紹了
百度迁徙爬虫工具:Baidu_migration_crawler
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Baidu_migration_crawler是一個百度遷徙數據爬蟲
新冠肺炎抗疫形勢嚴峻,國內多家公司都為抗疫貢獻了自己的力量,如丁香園的疫情播報和地圖,百度遷徙的人口流動信息等。這些數據能夠為分析和預測疫情傳播、發展提供重要基礎。
為了讓百度遷徙提供的人口流動數據更便于分析,筆者使用Python制作了Baidu_migration_crawler工具來進行自動的數據爬取和解析存儲。
- 注:使用該工具需要先安裝MongoDB數據庫(非常適合存儲這種形式的數據)和相關Python依賴
功能介紹
爬取百度遷徙上的數據,支持每日增量爬取以下內容:
- 人口遷出數據(比例):市級->省級、市級->市級、省級->省級、省級->市級
- 人口遷入數據(比例):市級->省級、市級->市級、省級->省級、省級->市級
- 人口遷出數據(數值/規模指數):市級、省級
- 人口遷入數據(數值/規模指數):市級、省級
- 全國遷出數據(比例):市級、省級
- 全國遷入數據(比例):市級、省級
- 城內遷徙數據:市級
項目地址
- https://github.com/tomleung1996/Baidu_migration_crawler
數據樣例
環境依賴
- requests
- tqdm
- pymongo
- MongoDB數據庫
- json
使用方法
location_ids.txt文件存放了待爬取的省級、市級行政單位的行政區劃代碼,可根據需要自行修改
出于方便存取的考慮,數據存儲使用了MongoDB數據庫,需要安裝相應的環境才能使用本程序。如有需要請修改connect_str為自己的數據庫連接URL
執行main.py中的fetch_timerange()方法,傳入格式為YYYYMMDD的起止日期即可進行爬取,如20200402。若僅需要爬取一天,則設置相同的起止日期
數據結構
數據包含三個Collection,分別為全國分布數據(cn_distribution)、省級遷徙數據(province_flow)和市級遷徙數據(city_flow):
- 全國分布數據(cn_distribution),每日的數據包含4個Document,分別為省級的遷入(move_in)、遷出(move_out)和市級的遷入、遷出情況。每個Document中包含各省或市的具體情況數組。
- 省級遷徙數據(province_flow),每日的數據包含33 * 4個Document,即我國33個省級行政單位(含直轄市及港澳,不含臺灣地區)每日的省級遷入、遷出和市級遷入、遷出情況。
- 市級遷徙數據(city_flow),每日的數據包含368 * 4個Document,即百度遷徙所收錄的368個市級行政單位(為方便分析,含直轄市及港澳,不含臺灣地區)每日的省級遷入、遷出和市級遷入、遷出情況。
總結
以上是生活随笔為你收集整理的百度迁徙爬虫工具:Baidu_migration_crawler的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 享元模式_python 设
- 下一篇: 自学前端的高效学习路线.avi