当前位置:AIGC资讯 > 数据采集 > 正文

Selenium爬虫实战丨Python爬虫实战系列(8)

?个人主页:互联网阿星?
?格言:选择有时候会大于努力,但你不努力就没得选
?作者简介:大家好我是互联网阿星,和我一起合理使用Python,努力做时间的主人
?如果觉得博主的文章还不错的话,请点赞?+收藏⭐️+留言?支持一下博主哦?


行业资料:PPT模板、简历模板、行业经典书籍PDF
面试题库:历年经典、热乎的大厂面试真题,持续更新中…
学习资料:含Python基础、爬虫、数据分析、算法等学习视频和文档
Tips:以上资料·阿星已备好>>戳我,空投直达?

阿星文章·目录

前言 Selenium爬虫实战应用 实战案例目标 实现自动搜索 滚动滑动条 实现翻页抓取 完整程序代码 小结

前言

本节讲解 Python Selenium 爬虫实战案例,通过对实战案例的讲解,进一步认识 Selenium 框架。Selenium是一个用电脑模拟人操作浏览器网页,可以实现自动化,测试等。

Selenium爬虫实战应用

实战案例目标


Selenium 框架的学习重点在于定位元素节点。关于如何定位,我们有以下 8 种方法:

定位节点方法 方法 说明 find_element_by_id() 通过 id 属性值定位 find_element_by_name() 通过 name 属性值定位 find_element_by_class_name() 通过 class 属性值定位 find_element_by_tag_name() 通过 tag 标签名定位 find_element_by_link_text() 通过<a>标签内文本定位,即精准定位。 find_element_by_partial_link_text() 通过<a>标签内部分文本定位,即模糊定位。 find_element_by_xpath() 通过 xpath 表达式定位 find_element_by_css_selector() 通过 css 选择器定位

其中 Xpath 表达式适用性强,并且便捷。因此,建议大家多多熟悉 Xpath 表达式的相关语法规则。本节案例中很大一部分采用了 Xpath 表达式定位元素,希望帮助您温故知新。

本节案例中涉及了几个技术难点:第一,如何下拉滚动条下载sp,第二,如何实现翻页,也就是抓取下一页的内容,第三,如何判断数据已经抓取完毕,即终止页。下面我们逐步讲解。

实现自动搜索

实现自动输出、自动搜索是最基础的一步。首先定位输入框的的节点,其次定位搜索按钮节点,这与实现百度自动搜索思路一致,最关键就是要正确定位元素节点。

通过开发者调试工具检查相应的的位置,可得如下 Xpath 表达式:

输入框表达式://*[@id="key"]
搜索按钮表达式://*[@class='form']/button

代码如下所示:

from selenium import webdriver

broswer=webdriver.Chrome()
broswer.get('jd网址')
broswer.find_element_by_xpath('//*[@id="key"]').send_keys("python书籍")
broswer.find_element_by_xpath("//*[@class='form']/button").click()

滚动滑动条

实现了自动搜索后,接下来就是要抓

更新时间 2023-11-08