信息化建设要看你做什么了?是报表程序(单机、联网的)、网站、OA办公系统、网络硬件和软件系统、机房?像大型的普查、调查,国家统计局说了算,面向地方统计局的小东西,也得到省统计局合作吧。
1.爬虫基本流程发起请求:通过http/https库向目标站点发起请求,即发送一个request,请求可以包含额外的headers等信息,等待服务器响应
获取相应内容:如果服务器能正常响应,会得到一个response,response的内容便是所要获取的页面内容,类型可能有HTML,json字符串,二进制数据(如图片视频)等类型
解析内容:得到的内容可能是HTML,可以用正则表达式,网页解析库进行解析,可能是json,可以直接转为json对象,可能是二进制数据,可以做保存或者进一步的处理
(本次实验得到的解析内容是json)
保存数据:可以存为文本,也可以保存至数据库,或者特定格式的文件
2.打开网页并分析
国家统计局的网站很奇怪,明明是https却会告警不安全,首次打开界面如下(本人使用的是谷歌浏览器)
点击“高级”-“继续前往”,方可进入首页
选择“季度数据”-“分省季度数据”
选择“人民生活”-“城乡收支情况”
地区修改为“上海市”
按下F12,进入浏览器调试模式
刷新重新获取网页信息,找到easyquery.htm?m=Query Data&dbc...的文件。可以先选中"XHR"过滤条件,缩小查找范围
怎么确认这个文件就包含有我们要找的数据呢?点击“response”板块,向右拖动滑块可以看到表格数据可以一一对应(但数据并没有连续出现)
注意:这里的data和strdata看上去一样,但实际格式不一样,data是int或double格式,strdata是str格式,这个表格有一些空数据行,字符串格式方便做判断,字符串转数字使用eval()即可
3.完整代码及解析
注:缺少的库可以在命令行使用pip命令安装,如缺少requests库,可以在命令行输入命令
pip install requests
import urllib3
# 使用urllib3.disable_warnings()在关闭SSL认证(verify=False)情况下
# 将requests请求禁用安全请求警告
import requests# 使用Requests发送网络请求
import time # 用来获取时间戳(计算当前时间,用于网页验证)
import json # 处理json文件
我在我办公室也是这样,我问统计局的人 她们说把防火墙关了,360要给卸载了,这样才可以。 但是我家装的360都没事。 还有 你报的是哪个?采集门户的 还是企业一套表的? 采集门户那个 前段时间网站确实是出问题了 我报月报都没报成。欢迎分享,转载请注明来源:夏雨云
评论列表(0条)