介绍
介绍
我们在使用seleniuim去驱动Chrome浏览器的时候,需要针对电脑上面的Chrome浏览器的版本选择对应的chromedriver驱动,这样selenium才能正常驱动Chrome浏览器实现被我们的程序自动操作的目的。
但是我们的电脑上面的Chrome会不断升级的,这样一来就要配合Chrome浏览器不断地升级chromedriver,这个肯定不是我们想要的结果,怎么办呢?
其实selenium除了可以驱动电脑上面的Chrome浏览器之外,还可以驱动远程电脑上面的Chrome浏览器,这样就给我们提供了一个选择 ,我们可以弄一个电脑,里面只安装一个Chrome浏览器,然后使用selenium远程来驱动这个电脑上面的Chrome浏览器,最后我们只要保证这个电脑的Chrome浏览器不升级就可以了。
再拓展一下,我们可以弄很多台电脑,里面都安装上Chrome浏览器,这样我们可以通过selenium同时驱动这些电脑上面的Chrome浏览器,实现批量执行任务,这样才有生产的样子!
Windows
首先,我们在熟悉的Windows上面小试身手一下看看!
启动chromedriver
第一步,福哥要先通过chromedriver启动一个Chrome浏览器的服务,这个通过chromedriver驱动就可以。
chromedriver.exe --port=9515 --allowed-ips=127.0.0.1
更改selenium
第二布,福哥把初始化Chrome的代码改成从远程驱动的方式,默认是http的协议的。
把Chrome方法换成Remote方法,把chromedriver的地址写上去,其他不变,就可以了。
# set opts # chrome = webdriver.Chrome(options=opts) chrome = webdriver.Remote("http://127.0.0.1:9515", options=opts)
测试
成功了!总结
今天福哥带着童鞋们学习了如何使用selenium调用远程的chromedriver调试程序的技巧,通过将Python程序和chromedriver分离的设计,我们可以一套程序操作多台电脑做任务的目的。
下一课,福哥将带着大家使用Linux配置多个chromedriver环境,并且用selenium对它们发布命令,让多个chromedriver同时执行任务,敬请期待~~