Part1下载浏览器驱动
运用 Selenium 之前,首先需要对我们所用的浏览器驱动进行下载。本文所用浏览器为火狐,其驱动器下载网址为:https://github.com/mozilla/geckodriver/releases
1观察浏览器版本
点击菜单,找到帮助,然后点击关于 Firefox,就可以看到火狐浏览器的版本。
2下载驱动器
1.搜索上述网址,选择对应的浏览器驱动版本进行下载。
2.将下载好的 geckodriver.exe 文件复制或剪切到 Anaconda 的 Scripts 文件夹里。
Part2导入 webdriver
webdriver 也就是驱动,它可以控制我们之前所下载的浏览器驱动器,具体代码如下:
from selenium import webdriver web=webdriver.Firefox()
Part3访问网页
#web.get("所需访问的网址") web.get("http://www.stats.gov.cn/sj/pcsj/jbdwpc/decjbdwpcsj/202302/t20230221_1915343.html")
Part4元素定位
最新版本中只可以使用 find_element 和 find_elements 两种方法进行元素定位。find_element 是用于查找单个元素,而 find_elements 是用于查找所有元素。具体需要查找的元素标签需要通过在该网页点击右键,选择查找,找到对应标签。
在观察完元素后发现,表格中内容均在 td 节点中,故本文使用 for 循环进行存储。具体代码如下:
element=web.find_element("class name","TRS_PreAppend") tr_content=element.find_element("tag name","tbody").find_elements("tag name","tr") data=[] for tr in tr_content: td_content=tr.find_elements("tag name","td") lst=[] for td in td_content: lst.append(td.text) data.append(lst)
Part5存储数据
将获取的数据以excel的形式保存下来。
data=pd.DataFrame(data) data.to_excel("国家统计局数据.xlsx")
Part6全套代码
from selenium import webdriver import pandas as pd web=webdriver.Firefox() web.get("http://www.stats.gov.cn/sj/pcsj/jbdwpc/decjbdwpcsj/202302/t20230221_1915343.html") element=web.find_element("class name","TRS_PreAppend") tr_content=element.find_element("tag name","tbody").find_elements("tag name","tr") data=[] for tr in tr_content: td_content=tr.find_elements("tag name","td") lst=[] for td in td_content: lst.append(td.text) data.append(lst) data=pd.DataFrame(data) data.to_excel("国家统计局数据.xlsx")
Part7运行结果
Part8注意事项
本文的代码适用于最新版本 selenium4,如果运用本文代码出现:AttributeError 错误,可能是由于版本不同导致。selenium3 的元素查找代码如下所示:
以上就是“Selenium库爬取国家统计局数据”的全部内容,希望对你有所帮助。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、Python练习题
检查学习结果。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。