前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全国统计用区划代码和城乡划分代码 2022年数据[爬虫]【Json+CSV格式】

全国统计用区划代码和城乡划分代码 2022年数据[爬虫]【Json+CSV格式】

作者头像
obaby
发布2023-04-28 19:42:20
8310
发布2023-04-28 19:42:20
举报
文章被收录于专栏:obaby@marsobaby@mars
原始数据连接http://www.stats.gov.cn/sj/tjbz/tjyqhdmhcxhfdm/2022/ 2021年的数据连接已经失效。整体页面变化不大,但是新的页面直接使用request拉数据获取的页面数据是错误的:
代码语言:javascript
复制
<noscript>
<h1><strong>Please enable JavaScript and refresh the page.</strong></h1>
</noscript>

所以为了正常获取数据可以使用selenium来获取页面源代码之后在使用以前的bs4来处理数据。

代码语言:javascript
复制
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from lxml import etree


chrome_options = Options() # 实例化Option对象
chrome_options.add_argument('--headless') # 把Chrome浏览器设置为静默模式
chrome_options.add_argument('--disable-gpu') # 禁止加载图片
driver = webdriver.Chrome(options = chrome_options) # 设置引擎为Chrome,在后台默默运行

def http_get(url):
    driver.get(url)
    return driver.page_source

此时就可以正常获取数据了。

json转csv工具参数说明:

代码语言:javascript
复制
(venv) (base) zhongming@ZhongMingdeMacBook-Pro get_district % python json2csv.py   
****************************************************************************************************
国家统计局行政区划爬虫 Json转CSV
http://h4ck.org.cn
obaby@mars
Usage: json2csv -a -i <inputfile> -o <outputfile>
 -a 转换当前目录下所有json文件
 -i json文件
 -o 转换后的csv文件
****************************************************************************************************

代码有bug ,-o参数无效,如果要使用-o参数,请自行修改代码。另外,如果转换出错,请删除报错的json文件,重新生成,多数是由于网络问题,导致json文件数据不完整导致的错误,重新爬取对应的省份即可。

csv文件结构预览:

项目开源代码地址: https://github.com/obaby/administrative-division-spider


本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023年4月21日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com