資料來源
通過Python指令碼,自動抓取國家統計局最新的中國省市區三級城市資訊,目前抓取的最新資料為2017年統計用區劃程式碼和城鄉劃分程式碼(截止2017年10月31日),我會關注,時刻保持更新。
資料格式
目前支援MySQL格式和JSON格式,其中MySQL的有兩個版本,分別為三張表和一張表的,即三張表的為省市區三張表,而一張表的則把省市區三級城市通過關聯關係都存在一張表中,可以根據自己的需求進行選擇,如果有其他格式需求,可以聯絡我或者自己修改指令碼。
指令碼目錄結構
├── json/ # 儲存JSON資料格式
├── mysql/ # 儲存三張表的資料格式
├── mysql_v2/ # 儲存一張表的資料格式
├── city_to_json.py # 抓取JSON資料格式的指令碼
├── city_mysql.py # 抓取三張表的資料格式的指令碼
├── city_to_mysql_v2.py # 抓取一張表的資料格式的考平貝母
├── mysql_init.sql # 儲存三張表的資料的表結構
├── mysql_v2_init # 儲存一張表的資料的表結構複製程式碼
如有需要,直接下載字尾為json或者sql的檔案即可直接使用,也可以根據對應的python指令碼重新生成相應的省市區三級地址庫資料。
抓取資料方法
這裡主要使用requests、beautifulsoup4以及json這三個模組,通過requests傳送url頁面請求,然後BeautifulSoup分析請求到的頁面資訊,抓取有效資料,通過json模組,讀取以及儲存json格式的資料,而mysql的資料則直接通過檔案的讀寫操作即可。
原始碼分享
這個爬蟲指令碼比較易讀,而且礙於文章篇幅問題,所以,我這裡就不貼原始碼了,直接放到交友網站GitHub上了,有興趣的可以前往檢視。
原始碼以及資料地址:github.com/gxcuizy/Pyt…