- from selenium import webdriver
- option = webdriver.ChromeOptions()
- # 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
- option.add_argument('--headless') 
- # 添加UA
- option.add_argument('user-agent="MQQBrowser/26 Mozilla/5.0 (Linux; U; Android 2.3.7; zh-cn; MB200 Build/GRJ22; CyanogenMod-7) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1"')
- # 指定浏览器分辨率
- option.add_argument('window-size=1920x3000') 
- # 谷歌文档提到需要加上这个属性来规避bug
- option.add_argument('--disable-gpu') 
-  # 隐藏滚动条, 应对一些特殊页面
- option.add_argument('--hide-scrollbars')
- # 不加载图片, 提升速度
- option.add_argument('blink-settings=imagesEnabled=false') 
- # 以最高权限运行
- option.add_argument('--no-sandbox')
- # 手动指定使用的浏览器位置
- option.binary_location = r"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" 
- #添加crx插件
- option.add_extension('d:\crx\AdBlock_v2.17.crx') 
- # 禁用JavaScript
- option.add_argument("--disable-javascript") 
- # 设置开发者模式启动,该模式下webdriver属性为正常值
- option.add_experimental_option('excludeSwitches', ['enable-automation']) 
- # 禁用浏览器弹窗
- prefs = {  
-     'profile.default_content_setting_values' :  {  
-         'notifications' : 2  
-      }  
- }  
- option.add_experimental_option('prefs',prefs)
- ########################################################
- driver = webdriver.Chrome(options=option)
- ########################################################
- #浏览器中加载url
- driver.get("http//:www.baidu.com")
- #浏览器窗口最大化
- driver.maximize_window()
- #向前
- driver.forward()
- #后退
- driver.back()
- #刷新
- driver.refresh()
- #获取当前页面的URL
- driver.current_url
- #获取当前页面的标题
- driver.title
- #获取当前页面html源代码
- driver.page_source
- #获取当前会话所有cookie信息
- driver.get_cookies()
- #根据cookie name 进行查找
- driver.get_cookie(name='key-value')  #获取name='key-value'的cookie值
- #删除浏览器所有的cookies 
- driver.delete_all_cookies()
- #删除指定的cookies
- deriver.delete_cookie("my_cookie_name")
- #增加cookies
- driver.add_cookie({'name':'xiaoqiang'}) #注意这里需要的是字典,注意字典的name不能任意定义,可以通过get_cookies()方法获取cookie的关键字
- #获取当前窗口的截图
- driver.save_screenshot('./bing.png')
- #退出WebDriver并关闭所有窗口
- driver.quit()
- #关闭当前tab
- driver.close()