seleniumChrome简单的设置+启动浏览器+定位+点击
简介
什么是 chrome.options
chrome.options 是一个方便控制 chrome 启动时属性的类。通过 selenium 的源码,可以看到,chrome.options 主要提供如下几个功能:
作者:Simon0903
链接:https://www.jianshu.com/u/2b4bc3b5e6fc
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
% from selenium import webdriver #导入
% from selenium.webdriver.chrome.options import Options #自定义启动参数包导入
代码:
% setup= Options() #实例化设置功能(启动参数对象)
% setup.add_argument() # 设置浏览器以无界面方式运行
% setup.add_argument('--disable-gpu') # 官方文档表示这一句在之后的版本会消失,但目前版本需要加上此参数
% setup.add_argument("--start-maximized") # 最大化浏览器
% setup.add_argument('--window-size=1366,768') # 设置系统的浏览器窗口大小
(窗口大小不同会在解析网页时出现不同的结果)
% open_browser = webdriver.Chrome(chrome_options=setup)
# 添加了启动参照之后的打开浏览器
# 注意,一般selenium默认是火狐firefox, 当使用chrome的时候,要把chromedriver.exe插件放在脚本的相对目录下,否则,就要给定绝对路径参数来开启chromedriver.exe 插件
% open_browser = webdriver.Chrome(executable_path=“绝对路径”)
![](https://img.haomeiwen.com/i12052517/6dbc539a1491fdb6.png)
运行上述代码,则会打开一个无界面chrome浏览器的空白页,去掉headless那一行代码才可以看到有界面的浏览器操作。
例子: 模拟操作浏览器打开百度
导入模块
% from selenium import webdriver
% from selenium.webdriver.common.by import By
% from selenium.webdriver.support import expected_conditions as EC
% from selenium.webdriver.support.wait impor WebDriverWait
代码:
(ps:如果chromedirver.exe插件不是和你脚本文件同一目录,那打开浏览器)
% browser = webdriver.Chrome() #打开浏览器
% browser.get("www.baidu.com") # 登录百度域名 (传入参数是str)
% input = WebDriverWait(browser,10) .until(
EC.presence_of_element_located((By.XPATH,'//*[@id="kw"]'))
)
#最多等待10秒,使用xpath元素定位,定位到输入框
参数解释: WebDriverWait(driver, 超时时长, 调用频率, 忽略异常).until(可执行方法, 超时时返回的信息)
% driver.find_element_by_xpath('//input[@id="su"]').clear() #有些输入框有默认值,先清除
% input.send_keys('Python') #让selenium输入 ‘Python’(传入参数是str)
% button = WebDriverWait(browser,10).until(
EC.element_to_be_clickable( (By.XPATH,'//*[@id="su"]'))
) # 定位到输入元素的按钮
% button.click() # 点击按钮
% browser.quti() # 退出自动模拟操作
quti方法一定要在结尾写,作用是退出selenium的进程,否则再次启动selenium任务管理器会出现另一条进程,原先的进程不会自动结束,需留意养成习惯