selenium和geckodriver chromedriver协同模拟浏览器

本文详细介绍了如何配置和使用Selenium与GeckoDriver进行自动化测试,包括驱动下载、环境变量设置、与Firefox浏览器的匹配及代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

selenium和geckodriver协同

先注意一件事,之前通过学习了解到,selenium和chromedriver不能随意乱用,每一个版本必须和相关的driver匹配才能运行。

https://blog.youkuaiyun.com/huilan_same/article/details/51896672

Firefox同理。

1、下载驱动,geckodriver是firefox的驱动程序,下载:https://github.com/mozilla/geckodriver/releases

当然,这个地址太慢了。换用早一点版本的也可以:http://www.opdown.com/soft/100742.html#download

下载之后,按照windows的64位/32位系统,解压到自己的python文件夹,添加系统的环境变量PATH。比如python装在C:\ANACONDA3\Scripts了,就把这个目录添加到PATH进去。

2、尝试单独运行driver,进入cmd,输入geckodriver回车,看到类似这样的提示

1548067351009   geckodriver     INFO    Listening on 127.0.0.1:4444

就说明可以了。

以下是chrome和geckodriver的对应关系表,v2.0对应了31-34,技术不能操之过急啊。如果使用某版本的chrome,必须使用相应版本的driver,否则启动失败。

http://chromedriver.storage.googleapis.com/index.html

3、配合浏览器。下载相应的浏览器。截止当前时间,driver是(下载的时候可以看到geckodriver-v0.22.0-win64,那么就是0.22版)0.22,下载firefox51.0,启动成功。

import time
import sys
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

#初始化driver需要传入FirefoxBinary变量,变量详解请见help
binary = FirefoxBinary('C:\\Program Files\\Firefox51\\firefox.exe', log_file=sys.stdout)
driver = webdriver.Firefox(firefox_binary=binary)

driver.get("http://www.sogou.com")
 
driver.find_element_by_id("query").clear()
driver.find_element_by_id("query").send_keys("Python")
driver.find_element_by_id("stb").click()
time.sleep(10)
driver.quit()

说明一下,搜狗的input输入框id是query,提交按钮id是stb。可以通过浏览器按F12或者右键-查看元素(O)看到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值