selenium爬虫2

news/2024/11/19 14:50:58/文章来源:https://www.cnblogs.com/hackzz/p/18387426

无头浏览器简介

无头浏览器(Headless Browser)是一种没有图形用户界面的浏览器,它在后台运行,不会显示任何窗口或界面。无头浏览器通常用于自动化任务,如网页抓取、自动化测试和性能监控等。

爬取票房

比如我要爬取上图的2008--2024年的热门电影票房排名

from selenium import webdriver
from selenium.webdriver.common.by import By
import time
from selenium.webdriver.support.ui import Select
from selenium.webdriver.chrome.options import Optionsoptions = Options()# 添加配置
options.add_argument('--headless')
options.add_argument('--disable-gpu')
# 初始化浏览器驱动
driver = webdriver.Chrome(options=options)
# 打开
driver.get("http://www.endata.com.cn/BoxOffice/BO/Year/index.html")
sel_el=driver.find_element(By.XPATH,'/html/body/section/div/div[2]/div/div/div[1]/select') # 定位select标签
sel=Select(sel_el)
for s in range(len(sel.options)):sel.select_by_index(s)time.sleep(1.5)table=driver.find_element(By.XPATH,'//*[@id="TableList"]/table')print(table.text)
input("Enter to quit")
driver.quit()

--headless

含义:--headless 选项用于启用无头模式。
作用:当这个选项被添加到浏览器启动参数中时,浏览器将以无头模式运行,即没有图形用户界面(GUI)。这意味着浏览器不会显示任何窗口或界面,但仍然可以执行所有正常的浏览器操作,例如加载页面、执行 JavaScript 等。
用途:无头模式特别适合用于自动化测试、网页抓取和服务器环境下的任务,因为它更高效且不需要显示图形界面。

--disable-gpu

含义:--disable-gpu 选项用于禁用 GPU 硬件加速。
作用:某些情况下,无头模式下的浏览器可能会遇到与 GPU 硬件加速相关的问题。通过禁用 GPU,可以避免这些潜在的问题,确保浏览器在无头模式下稳定运行。
用途:虽然现代浏览器在无头模式下通常会自动处理 GPU 问题,但显式地禁用 GPU 可以增加兼容性,特别是在不同的操作系统和硬件配置上。

关于下拉菜单

网页上的下拉菜单的html代码:

<div class="time-sel">

<select id="OptionDate" class="select-time-wrap ml10 mr10">
<option value="2024">2024年</option>
<option value="2023">2023年</option>
<option value="2022">2022年</option>
<option value="2021">2021年</option>
<option value="2020">2020年</option>
<option value="2019">2019年</option>
<option value="2018">2018年</option>
<option value="2017">2017年</option>
<option value="2016">2016年</option>
<option value="2015">2015年</option>
<option value="2014">2014年</option>
<option value="2013">2013年</option>
<option value="2012">2012年</option>
<option value="2011">2011年</option>
<option value="2010">2010年</option>
<option value="2009">2009年</option>
<option value="2008">2008年</option>
</select>
</div>

select_by_index(self,index) #按选项索引选择,从零开始
select_by_value(self,value) #按选项标签的value属性值选择,上面是2008、2009、2010等
select_by_visilbe_text(self,text) #按下拉选项option标签的内容选择,如2022年、2020年

效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/789268.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zotero设置

实现Zotero数据在不同电脑间的迁移1. 说明Zotero 中文社区 | 百度网盘使用 zotero 仅同步题录信息,使用其他云同步程序同步文献的附件,此处以坚果云为例进行演示。 准备:zotero 和 坚果云 注册账号 zotero 的插件 zotfile (国内汉化版) 坚果云客户端常用插件:zotfile jasmi…

CentOS 7.9 内核从 3.10 升级到 5.4

1.背景介绍: 环境需求:在搭建 Kubernetes (K8S) 环境时,内核版本最好大于 4.4 以支持 K8S 的所有特性。 当前内核版本:CentOS 7.9 的默认内核版本为 3.10.0-1160.el7.x86_64,不满足 K8S 的推荐内核版本要求。 2.查看内核版本及相关包: 使用命令 uname -r 查看当前内核版本…

基于LangChain手工测试用例转Web自动化测试生成工具

在传统编写 Web 自动化测试用例的过程中,基本都是需要测试工程师,根据功能测试用例转换为自动化测试的用例。市面上自动生成 Web 或 App 自动化测试用例的产品无非也都是通过录制的方式,获取操作人的行为操作,从而记录测试用例。整个过程类似于但是通常录制出来的用例可用性…

PbootCMS网站常见错误提示总结

一些初涉相关领域的新朋友在进行 pbootcms 的安装过程中,往往会频繁遭遇一些错误状况。接下来,为您详细罗列 pbootcms 于后台抑或前台所呈现出的各类问题以及相应的解决办法。1、Parse error: syntax error, unexpected :, expecting { in www\core\function\handle.php on l…

PbootCMS未检测到您服务器环境的sqlite3数据库扩展

在进行相关操作时,未能检测到您服务器环境中的 sqlite3 数据库扩展。在 PbootCms 的安装流程当中,“未检测到您服务器环境的 sqlite3 数据库扩展”这一问题的解决办法扫码添加技术【解决问题】专注中小企业网站建设、网站安全12年。熟悉各种CMS,精通PHP+MYSQL、HTML5、CSS3、…

PbootCMS验证码不显示怎么办

扫码添加技术【解决问题】专注中小企业网站建设、网站安全12年。熟悉各种CMS,精通PHP+MYSQL、HTML5、CSS3、Javascript等。承接:企业仿站、网站修改、网站改版、BUG修复、问题处理、二次开发、PSD转HTML、网站被黑、网站漏洞修复等。专业解决各种疑难杂症,您有任何网站问题都…

PbootCMS您访问路径含有非法字符,防注入系统提醒您请勿尝试非法操作!

您所访问的路径当中包含了非法字符,我们的防注入系统特此提醒您,千万不要尝试进行任何非法操作!扫码添加技术【解决问题】专注中小企业网站建设、网站安全12年。熟悉各种CMS,精通PHP+MYSQL、HTML5、CSS3、Javascript等。承接:企业仿站、网站修改、网站改版、BUG修复、问题…

PbootCMS前台显示留言条数统计

前台所呈现的内容为留言条数的统计情况。 无需进行二次开发,通过运用 sql 标签即可达成。在 PbootCMS 当中,sql 标签的使用实例之一便是对网站留言的总数进行统计。扫码添加技术【解决问题】专注中小企业网站建设、网站安全12年。熟悉各种CMS,精通PHP+MYSQL、HTML5、CSS3、J…

PbootCMS后台登录提示:”登录失败:数据库目录写入权限不足!“

后台登录提示:“登录失败:数据库目录写入权限不足!”通常来说,一般出现权限不足的情况,其中大多数状况都是由于文件夹权限不足所导致的。尤其是在使用 sqlite 的时候,必须要给根目录下的 data 文件夹设定 755 权限。扫码添加技术【解决问题】专注中小企业网站建设、网站安…

PbootCMS网站提示:”会话目录写入权限不足“

网站给出提示:“会话目录存在写入权限不足的情况。”在根目录之下,分别有:config(此为配置文件)、data(为 sqlite 数据库文件)、runtime(属于运行文件),需为其添加写入权限,可以设置为 755 或者 777 。扫码添加技术【解决问题】专注中小企业网站建设、网站安全12年。…

阿里云站点升级提示:OpenSSL SSL_connect: Connection reset by peer in connection to www.pbootcms.com:443

阿里云站点出现升级提示:OpenSSL SSL_connect: 在与 www.pbootcms.com:443 进行连接时,连接被对方重置。 目前,出现这一状况的原因尚不明确。相应的解决方案为:将相关内容下载到本地,完成升级操作之后,再次重新上传至服务器。 扫码添加技术【解决问题】专注中小企业网站建…