天天看點

selenium啟動Chrome配置參數問題

每次當selenium啟動chrome浏覽器的時候,chrome浏覽器很幹淨,沒有插件、沒有收藏、沒有曆史記錄,這是因為selenium在啟動chrome時為了保證最快的運作效率,啟動了一個裸浏覽器,這就是為什麼需要配置參數的原因,但是有些時候我們需要的不僅是一個裸浏覽器。

selenium啟動配置參數接收是ChromeOptions類,建立方式如下:

from selenium import webdriver

option = webdriver.ChromeOptions()
           

建立了ChromeOptions類之後就是添加參數,添加參數有幾個特定的方法,分别對應添加不同類型的配置項目。

設定 chrome 二進制檔案位置 (binary_location)

from selenium import webdriver
option = webdriver.ChromeOptions()

# 添加啟動參數
option.add_argument()

# 添加擴充應用 
option.add_extension()
option.add_encoded_extension()

# 添加實驗性質的設定參數 
option.add_experimental_option()

# 設定調試器位址
option.debugger_address()
           

常用配置參數:

from selenium import webdriver

option = webdriver.ChromeOptions()

# 添加UA

options.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"')

# 指定浏覽器分辨率

options.add_argument('window-size=1920x3000') 

# 谷歌文檔提到需要加上這個屬性來規避bug

chrome_options.add_argument('--disable-gpu') 


 # 隐藏滾動條, 應對一些特殊頁面

options.add_argument('--hide-scrollbars')

# 不加載圖檔, 提升速度

options.add_argument('blink-settings=imagesEnabled=false') 

# 浏覽器不提供可視化頁面. linux下如果系統不支援可視化不加這條會啟動失敗

options.add_argument('--headless') 

# 以最高權限運作

options.add_argument('--no-sandbox')

# 手動指定使用的浏覽器位置

options.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屬性為正常值

options.add_experimental_option('excludeSwitches', ['enable-automation']) 

# 禁用浏覽器彈窗

prefs = {  

    'profile.default_content_setting_values' :  {  

        'notifications' : 2  

     }  

}  

options.add_experimental_option('prefs',prefs)



driver=webdriver.Chrome(chrome_options=chrome_options)
           

浏覽器位址欄參數:

在浏覽器位址欄輸入下列指令得到相應的資訊

about:version - 顯示目前版本


about:memory - 顯示本機浏覽器記憶體使用狀況


about:plugins - 顯示已安裝插件


about:histograms - 顯示曆史記錄


about:dns - 顯示DNS狀态


about:cache - 顯示緩存頁面


about:gpu -是否有硬體加速


chrome://extensions/ - 檢視已經安裝的擴充
           

其他配置項目參數

–user-data-dir=”[PATH]” 
# 指定使用者檔案夾User Data路徑,可以把書簽這樣的使用者資料儲存在系統分區以外的分區


–disk-cache-dir=”[PATH]“ 
# 指定緩存Cache路徑


–disk-cache-size= 
# 指定Cache大小,機關Byte


–first run 
# 重置到初始狀态,第一次運作


–incognito 
# 隐身模式啟動


–disable-javascript 
# 禁用Javascript

--omnibox-popup-count="num" 
# 将位址欄彈出的提示菜單數量改為num個

--user-agent="xxxxxxxx" 
# 修改HTTP請求頭部的Agent字元串,可以通過about:version頁面檢視修改效果

--disable-plugins 
# 禁止加載所有插件,可以增加速度。可以通過about:plugins頁面檢視效果

--disable-javascript 
# 禁用JavaScript,如果覺得速度慢在加上這個

--disable-java 
# 禁用java

--start-maximized 
# 啟動就最大化

--no-sandbox 
# 取消沙盒模式

--single-process 
# 單程序運作

--process-per-tab 
# 每個标簽使用單獨程序

--process-per-site 
# 每個站點使用單獨程序

--in-process-plugins 
# 插件不啟用單獨程序

--disable-popup-blocking 
# 禁用彈出攔截

--disable-plugins 
# 禁用插件

--disable-images 
# 禁用圖像

--incognito 
# 啟動進入隐身模式

--enable-udd-profiles 
# 啟用賬戶切換菜單

--proxy-pac-url 
# 使用pac代理 [via 1/2]

--lang=zh-CN 
# 設定語言為簡體中文

--disk-cache-dir 
# 自定義緩存目錄

--disk-cache-size 
# 自定義緩存最大值(機關byte)

--media-cache-size 
# 自定義多媒體緩存最大值(機關byte)

--bookmark-menu 
# 在工具 欄增加一個書簽按鈕

--enable-sync 
# 啟用書簽同步           

繼續閱讀