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两个数据库。