Selenium的下载及chrome环境搭建

Selenium的下载及环境的搭建

1.安装python环境

bash 复制代码
conda 安装python环境《略》

2.在CMD在使用pip下载Selenium

bash 复制代码
pip install selenium   #pip安装

3.下载webdriver

进入Selenium的下载界面:https://www.selenium.dev/downloads/

下拉找到Browsers

4、驱动与浏览器


https://developer.chrome.com/docs/chromedriver/downloads?hl=zh-cn

对应版本
https://googlechromelabs.github.io/chrome-for-testing/

5、webdriver.chrome的开发文档
https://selenium-python.readthedocs.io/

开发举例

一、浏览器控制方法

get(url):加载指定的 URL 到浏览器中。

bash 复制代码
driver.get("https://www.baidu.com") #示例:
复制代码
quit():关闭浏览器并结束所有相关的窗口和进程。
bash 复制代码
driver.quit() #示例:
复制代码
close():关闭当前窗口。如果只有一个窗口打开,它的行为与quit()类似。
bash 复制代码
driver.close()  #示例:

二、元素定位方法

find_element(By.ID, value):通过元素的 ID 属性查找单个元素。 示例:element =

driver.find_element(By.ID, "my_element_id")。 find_element(By.NAME,

value):通过元素的 NAME 属性查找单个元素。 示例:element = driver.find_element(By.NAME,

"my_element_name")。 find_element(By.CLASS_NAME, value):通过元素的

CLASS_NAME 属性查找单个元素。 示例:element = driver.find_element(By.CLASS_NAME,

"my_element_class")。 find_element(By.TAG_NAME, value):通过元素的标签名查找单个元素。

示例:element = driver.find_element(By.TAG_NAME, "input")。

find_element(By.LINK_TEXT, value):通过链接的完全匹配文本查找单个元素。 示例:element =

driver.find_element(By.LINK_TEXT, "Click here")。

find_element(By.PARTIAL_LINK_TEXT, value):通过链接的部分文本查找单个元素。

示例:element = driver.find_element(By.PARTIAL_LINK_TEXT, "Click")。

find_element(By.CSS_SELECTOR, value):通过 CSS 选择器查找单个元素。 示例:element =

driver.find_element(By.CSS_SELECTOR, "#my_element_id")。

find_element(By.XPATH, value):通过 XPath 表达式查找单个元素。 示例:element =

driver.find_element(By.XPATH, "//div[@id='my_element_id']")。

find_elements(*locator):与上述方法类似,但返回的是符合条件的所有元素的列表。

三、元素交互方法

click():点击一个元素。 示例:element.click()。 send_keys(*value):向一个输入元素发送文本。

示例:element.send_keys("Hello, World!")。 clear():清除一个输入元素中的文本。

示例:element.clear()。 四、获取元素信息方法 text:获取元素的文本内容。 示例:element_text =

element.text。 get_attribute(name):获取元素的特定属性值。 示例:attribute_value =

element.get_attribute("class")。

五、等待方法

implicitly_wait(time_to_wait):设置一个隐式等待时间,在查找元素时,如果元素没有立即出现,Selenium

将等待指定的时间。 示例:

driver.implicitly_wait(10)(等待 10 秒)。

WebDriverWait(driver, timeout, poll_frequency=POLL_FREQUENCY,

ignored_exceptions=None):用于显式等待,等待特定条件满足。

六、代码示例

bash 复制代码
   from selenium.webdriver.support.ui import WebDriverWait
   from selenium.webdriver.support import expected_conditions as EC
   from selenium.webdriver.common.by import By

   element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "my_element_id")))
相关推荐
Voyager_423 分钟前
图像处理踩坑:浮点数误差导致的缩放尺寸异常与解决办法
数据结构·图像处理·人工智能·python·算法
jie*26 分钟前
小杰深度学习(ten)——视觉-经典神经网络——LetNet
人工智能·python·深度学习·神经网络·计算机网络·数据分析
大叔_爱编程34 分钟前
基于Python的交通数据分析应用-hadoop+django
hadoop·python·django·毕业设计·源码·课程设计·交通数据分析
Blossom.1181 小时前
用一颗MCU跑通7B大模型:RISC-V+SRAM极致量化实战
人工智能·python·单片机·嵌入式硬件·opencv·机器学习·risc-v
工业互联网专业1 小时前
基于大数据的学习资源推送系统的设计与实现 _django
vue.js·python·django·毕业设计·源码·课程设计·学习资源推送系统
木子杳衫4 小时前
【软件开发】管理类系统
python·web开发
程序员小远7 小时前
银行测试:第三方支付平台业务流,功能/性能/安全测试方法
自动化测试·软件测试·python·功能测试·测试工具·性能测试·安全性测试
猫头虎9 小时前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
沿着路走到底9 小时前
python 基础
开发语言·python
烛阴11 小时前
武装你的Python“工具箱”:盘点10个你必须熟练掌握的核心方法
前端·python