Python读取网页表格数据 您所在的位置:网站首页 python如何读取网页数据 Python读取网页表格数据

Python读取网页表格数据

2022-06-11 13:36| 来源: 网络整理| 查看: 265

学会了从网格爬取数据,就可以告别从网站一页一页复制表格数据的时代了。

说个亲身经历的事:

以前我的本科毕业论文是关于“燃放烟花爆竹和空气质量”之间关系的,就要从环保局官网查资料。

一个省10个市,720天的数据,我就傻乎乎地,一页一页复制数据,然后还要手动清理数据。

幸好可以复制,要不然我都可能手抄,你信不信。

当时别说Python,R都不知道,甚至excel都跛脚。

结果,有同学帮老师做个实验,论文都快写好了,我还在处理数据。

也正是因为有了这个经历,促使了我毕业很多年以后,还想把爬取数据这样一件事做好。

同时,也希望能给后面学习的人一点启发。

…………………………………………以上为感慨,下面是正文………………………………………

复制代码 1 #request网站请求 2 import urllib.request 3 #BeautifulSoup获取网站源代码 4 from bs4 import BeautifulSoup 5 import pandas as pd 6 import csv 7 response=urllib.request.urlopen('https://sthjt.ah.gov.cn/public/column/21691?type=4&action=list&nav=&sub=&catId=32710201') 8 #解析源代码 9 soup = BeautifulSoup(response, 'html.parser') 10 links = soup.find('div', {'id': {'xxgk_lmcon'}}) 11 ss =links.find_all('a') 12 for a in ss: 13 link = a.get('href') 14 #read_html可以直接获取网站表格 15 tb = pd.read_html(link)[2] 16 #mode='a'追加写入 17 tb.to_csv('C:\\Users\\RK-PC\\Desktop\\Crawldata.csv', mode='a') 复制代码

为了看的更清楚一点,把我获取数据的网站截图搬上来。

F12找元素

 点进去一个链接

看对应的源代码,注意到没有,网站表格基本都是这个结构,tr是表格的行,table row

 这里本可以继续用find函数找标签,然后输出

为了使代码简洁一点,采用pandas库的read_html函数,直接读取表格。

最后,把表格写入csv文件,注意要表明,mode='a’,不覆盖。

声明:以上操作仅用于学习和研究。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有