Python - 网页自动化(Selenium)
一、环境准备
1. Selenium安装
命令行安装, cmd命令行输入pip install selenium
pip install selenium
2. 浏览器驱动安装
找到本地chrome的浏览器的版本

查看谷歌浏览器的版本号

下载相应版本的驱动器,chrome浏览器驱动下载
2.1 114及更早版本
下载链接:chromedriver.storage.googleapis.com/index.html

下载完后,解压到python编译器目录(python.exe所在目录)将解压出来的chromedriver.exe放到python编译器目录。

2.2 130及之后版本
下载链接:https://googlechromelabs.github.io/chrome-for-testing/
只有后面status是绿色对勾的才可以下载,只需点击版本名称即可跳转到对应的下载位置。

以正式版为例,将文件的 url 地址复制到浏览器地址栏即可下载。

================================================================
其他浏览器驱动的下载链接:
geckodriver:https://firefox-source-docs.mozilla.org/testing/geckodriver/Support.html
edgedriver:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/#downloads
iedriver:https://selenium-release.storage.googleapis.com/index.html
================================================================
3. selenium原理
对于每一条Selenium脚本,一个http请求会被创建并且发送给浏览器的驱动,浏览器驱动中包含了一个HTTP Server,用来接收这些http请求,HTTP Server接收到请求后根据请求来具体操控对应的浏览器,浏览器执行具体的测试步骤,浏览器将步骤执行结果返回给HTTP Server,HTTP Server又将结果返回给Selenium的脚本,如果是错误的http代码我们就会在控制台看到对应的报错信息。

二、Selenium入门实例
测试代码:
import time
from selenium import webdriver #导入web驱动包
from selenium.webdriver.common.by import By #导入By类
def test1(name):
# 创建浏览器驱动
driver = webdriver.Chrome()
# 浏览器最大化显示
driver.maximize_window()
# 打开网页
driver.get('https://www.baidu.com/')
# 定位输入框
element = driver.find_element(By.ID,"kw")
# 输入文字
element.send_keys("Python")
# 定位按钮并模拟鼠标点击事件
driver.find_element(By.ID, "su").click()
# 延时3秒
time.sleep(3)
# 退出浏览器
#driver.quit()
# 按装订区域中的绿色按钮以运行脚本。
if __name__ == '__main__':
test1('PyCharm')
自动打开谷歌浏览器,自动打开百度,输入框输入“python”点击按钮(百度一下)。


浙公网安备 33010602011771号