Selenium 是支持 web 浏览器自动化的一系列工具和库的综合项目。
安装 Selenium python 库
pip install selenium

检查本地的 Chrome 版本

下载相应版本的驱动

解压缩后,测试驱动是否正常

将 chromedriver.exe 拷贝至 python 根目录

获取 Demo 代码
git clone git://github.com/SeleniumHQ/seleniumhq.github.io.git
安装 python 依赖
cd d seleniumhq.github.io\examples\pythonpip install -r requirements.txt

代码下载下来后,可以进行 examples/python/tests/getting_started 目录,查看官网的 demo 代码。在实际测试中发现,因为 chrome 环境的问题,无法打开 chrome,需要手动指定 chrome 可执行文件位置。

在排错过程中,发现在命令行指定报错的 chrome 文件也无法执行,应该是ghost系统中内置的非原版 chrome 的问题。重新指定原版 chrome 可执行文件位置,不再报错。
在python交互模式,测试 selenium 是否安装正确,使用 selenium 打开浏览器
>>> from selenium import webdriver>>> from selenium.webdriver.chrome.options import Options>>> opt = Options()>>> opt.binary_location = r'C:\Program Files\Google\Chrome\Application\chrome.exe'>>> driver = webdriver.Chrome(options=opt)
浏览器打开后会提示,浏览器正被自动测试软件控制

打开指定网页,比如打开百度
>>> driver.get(r'http://www.baidu.com/')

我们的目标是模拟手点一下搜索中的相机小图标,它是百度的搜图功能。

首先是在 F12 开发者工具中定位这个图标

这个图标是 class名叫 ”soutu-btn" 的节点,我们在 selenium 中定位这个节点,然后执行 click 动作
>>> from selenium.webdriver.common.by import By>>> a = driver.find_element(By.CLASS_NAME, "soutu-btn")>>> print(a)<selenium.webdriver.remote.webelement.WebElement (session="f194f5a3c6824b834ff9ba64e0a79081", element="993949f2-2d8c-488a-8d6d-f61b223eb86e")>>>> a.click()
可以看到浏览器已经发生变化,切换到搜图模式

文章转载自生有可恋,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




