得到表格中的数据需要先分析提取到的js文件,打印内容如下:
将五层列表层层剥开,得到需要的strdata
请求网站请求目标网址(\'\'?\'\'前面的东西)
url=\'https://data.stats.gov.cn/easyquery.htm\'请求头,User-Agent: 用来证明你是浏览器,满足一定格式即可,不一定要和自己的浏览器一样
headers={\'User-Agent\':\'Mozilla/5.0(Windows;U;Windows NT6.1;en-US;rv:1.9.1.6) Geko/20091201 Firefox/3.5.6\'}#浏览器代理构造参数键值对,下列参数会以 & 连接,放在链接的\'\'?\'\'后面
key={} key[\'m\']=\'QueryData\' key[\'dbcode\']=\'fsjd\' key[\'rowcode\']=\'zb\' key[\'colcode\']=\'sj\' key[\'wds\']=\'[{"wdcode":"reg","valuecode":"310000"}]\' key[\'k1\']=str(getTime()) key[\'dfwds\']=\'[{"wdcode":"zb","valuecode":"A0300"},{"wdcode":"sj","valuecode":"LAST6"}]\'部分参数可以从下图所示位置查看到,有些不显示的为默认,如果需要显示相同页面,需选取选项框中的相应选项
5.数据保存到excel表格爬虫爬到的数据现以panda.dataframe格式存储,可以利用to_excel()函数,直接保存在excel表格中
# write对象为该Excel工作簿,使用该方法保存多个工作表 write = pd.ExcelWriter(\'F:/Ivory_Tower/norm/分省季度数据_城乡居民收支.xls\') #该路径自己设置即可,没有该文件的话会自行创建一个,存在的话写入会覆盖原内容 df_shanghai.to_excel(write,sheet_name=\'上海\') #如果爬多个省份的数据,可以写入多个工作表,且必须要加上save()保存 write.save() 6.表格优化(可选)可以借助python代码,优化表格格式,如上图所示的结果不尽人意,至少还需要自动调整列宽。