# Python_GetArea **Repository Path**: litanglong/python_-get-area ## Basic Information - **Project Name**: Python_GetArea - **Description**: 使用Python 爬取国家行政区划的地区代码 2021年的 http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2021-09-26 - **Last Updated**: 2021-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Python_GetArea ### 本项目是熟悉Python语法而创建的爬取国家行政区划的区域代码。 ### 使用Python 爬取国家行政区划的地区代码 2021年的 http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm #### 1、使用了import / from 进行引包,调用第三方类库。 #### 2、定义了AreaObj类,用于序列化Json对象,定义了AreaObj2dict自定义序列方法用于Json的序列化。 #### 3、定义了WebPageParsing类,用于Http请求,并使用调用BeautifulSoup进行解析页面。 #### 4、通过对国家行政区划网站的分析得知,页面结构有两种,第一种是第一级省、直辖市、自治区页面结构,第二种是市/市辖区、区/县、街道/镇/乡、居委/村委,所以只需要区分两种页面结构即可。 #### 5、根据页面结构定义了GetOne和GetItemHtml两个方法,进行区别处理页面数据。 #### 6、爬取时使用了递归方式,完成2,3,4,5级的数据摘取。 #### 7、area_2021-05-14.txt 和 area_2021-05-15.txt是已经爬取好的json数据。共计68.9M 爬取了5级数据(爬到居委),有需要朋友可以直接拿来序列化成对象,保存到数据库中去。 ===================2021-05-16 bug修复======================= 1、生成的area_2021-05-14.txt文件中,json数据格式不正确,一级数据结尾处没有, #### 2、新增了AreaImportDataBase项目,项目使用了sqlalchemy框架,将本地json数据存储到数据库中去。 #### 3、存储到数据库中,目前已经测试通过了Mysql和postgresql两个数据库。