Giter Site home page Giter Site logo

daocr / area-china Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wendell-dev/area-china

0.0 0.0 0.0 18.02 MB

**行政区域国家统计局标准统计用区划代码,省市区联动以及镇、街道、村、居委会等共5级行政区域数据的获取并建库,同时提供JSON数据文件与Mongodb数据库备份文件。爬虫程序基于Python语言,存储于MongoDB

Python 100.00%

area-china's Introduction

area-china

  • 这是一个基于Python语言编写的爬虫项目,针对**省市区以及镇、街道、村、居委会等共5级行政区域数据的获取并建库
  • 数据来源于国家统计局的统计用区划代码和城乡划分代码,每一年都会统计并发布上一年的数据
  • 默认已经获取了2018年的5级行政区域全量数据,在项目的result目录里,结果类型有导出的JSON文件与mongo数据库备份文件
  • 统计用区划代码和城乡划分代码的区划范围,是国家统计局开展统计调查的区划范围
  • 数据不包括我国**省、香港特别行政区、澳门特别行政区
  • 级别
    • 一级:省、直辖市、自治区
    • 二级:地级市
    • 三级:市辖区、县(旗)、县级市、自治县(自治旗)、特区、林区
    • 四级:镇、乡、民族乡、县辖区、街道
    • 五级:村、居委会
  • 本项目仅做学习交流用途

项目结构

area-china

  • result (可用结果,《2018年统计用区划代码和城乡划分代码(截止2018年10月31日)》)
    • json (JSON结果文件)
    • mongo (MongoDB数据库结果文件,可采用命令进行数据恢复)
      • mongorestore -h <:port> -d dbname
  • source (程序源码目录)
    • 若需重新获取数据,运行该目录下的程序即可

数据结果统计

级别 数量 备注
一级 31 -
二级 343 -
三级 3282 -
四级 43486 -
五级 662814 -

数据库

  • 采用MongoDB作为数据库服务,程序运行后自动建立表(collection),简单方便快捷。

数据库表及字段说明

表 province (一级:省、直辖市、自治区)

字段名 字段含义 备注
id 数据主键 -
code 统计汇总识别码-划分代码 -
name 省/直辖市/自治区名称 -
url 下级链接地址 搜索二级时需要
searched 是否搜索过下级链接地址 搜索二级时需要

表 city (二级:地级市)

字段名 字段含义 备注
id 数据主键 -
code 统计汇总识别码-划分代码 -
name 地级市名称 -
province_id province表主键 -
province_name 省/直辖市/自治区名称 -
url 下级链接地址 搜索三级时需要
searched 是否搜索过下级链接地址 搜索三级时需要

表 county (三级:市辖区、县(旗)、县级市、自治县(自治旗)、特区、林区)

字段名 字段含义 备注
id 数据主键 -
code 统计汇总识别码-划分代码 -
name 区县名称 -
city_id city表主键 -
city_name 地级市名称 -
province_id province表主键 -
province_name 省/直辖市/自治区名称 -
url 下级链接地址 搜索四级时需要
searched 是否搜索过下级链接地址 搜索四级时需要

表 town (四级:镇、乡、民族乡、县辖区、街道)

字段名 字段含义 备注
id 数据主键 -
code 统计汇总识别码-划分代码 -
name 乡镇名称 -
county_id county表主键 -
county_name 区县名称 -
city_id city表主键 -
city_name 地级市名称 -
province_id province表主键 -
province_name 省/直辖市/自治区名称 -
url 下级链接地址 搜索五级时需要
searched 是否搜索过下级链接地址 搜索五级时需要

表 village (五级:村、居委会)

字段名 字段含义 备注
id 数据主键 -
code 统计汇总识别码-划分代码 -
code_type 城乡分类代码 -
name 村居委会名称 -
town_id town表主键 -
town_name 乡镇名称 -
county_id county表主键 -
county_name 区县名称 -
city_id city表主键 -
city_name 地级市名称 -
province_id province表主键 -
province_name 省/直辖市/自治区名称 -

运行程序

  • 依赖Python3环境,以及MongoDB作为数据库服务
  • 环境安装好后,建议直接导入项目到PyCharm中运行
  • 程序需按如下顺序依次运行:
    1. source\area\china\city\ProvinceSpider.py
    2. source\area\china\city\CitySpider.py
    3. source\area\china\city\CountySpider.py
    4. source\area\china\city\TownSpider.py (大概运行一个小时左右跑完)
    5. source\area\china\city\VillageSpider.py (这个运行时间较长,晚上跑起第二天早上来看一般能够跑完)
  • 如需更新库则可重新运行本程序,一般情况下一年运行一次即可,运行前先备份原有数据库再删除原有库以免数据重复

area-china's People

Contributors

wendell-dev avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.