问题如下:
使用selenium实例化对象后,进行打开网页的操作,但是仅打开浏览器,并不执行打开网页地址的操作,
且后面的时间函数以及关闭函数都不会执行.
使用过谷歌和火狐浏览器两种 问题都是同样出现的
其中谷歌 先是使用最新版本的软件和浏览器驱动,但是发现末尾的版本不同
所以尝试 降低浏览器版本以及下载旧的浏览器驱动,但是这样操作以后,问题还是一样没法解决
于是改使用火狐 下载了对应的浏览器版本和浏览器驱动程序,发现也只是打开浏览器 显示空白页 并不去 执行打开网页
其中驱动程序版本和浏览器是仔细核对过的 这里应该并无问题
然后也试着把驱动程序和浏览器程序放入系统环境变量
但是问题还是没有得到解决,请问这样子的问题 应该是出在哪里呢
from selenium import webdriver
import time
#实例化对象=指定浏览器和设置浏览器驱动路径 当前路径下的chromedriver
bro=webdriver.Firefox(executable_path='./geckodriver.exe') #火狐
#bro=webdriver.Chrome(executable_path='./chromedriver.exe')#谷歌
# #让浏览器发起一个指定url请求
bro.get(url='https://www.baidu.com')
time.sleep(5)
bro.quit()#关闭浏览器
把你从网上下载的chromedriver.exe放在python安装包的目录下面。比如我的安装包路径在C:\Users\zhang\AppData\Local\Programs\Python\Python37;那么我的chromedriver.exe就在这个目录下面。
from selenium import webdriver
import time
bro=webdriver.Chrome()#谷歌
bro.get(url='https://www.baidu.com')
time.sleep(5)
bro.quit()#关闭浏览器
运行起来没什么问题。
如果还有问题,私信与我交流。
最后 答题的老哥折腾了很久 最后发现是selenium 打开的浏览器是旧版本的
(至于为啥是旧版本浏览器,可能,也许是某个路径下面存在的旧浏览器)
这样导致了驱动程序和浏览器版本无法对应上,也就无法操控浏览器
解决办法:
指定浏览器的路径,以免打开旧浏览器
代码如下: 只能直接py文件运行 pychram中会提示options参数问题
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.binary_location = "C:\Program Files\Google\Chrome\Application\chrome.exe" # 这里是你指定浏览器的路径
driver = webdriver.Chrome(chrome_options=options)
driver.get('http://www.xxx.com')#你的网址
浏览器驱动程序 可以放在python的安装目录下
这样 运行脚本的时候,程序会自动找到驱动,可以不用写在代码里指定驱动路径
希望以后遇到此问题的朋友也能顺利解决问题~
/geckodriver.exe试下给绝对路径