如何覆盖硒中的chrome命令行开关的默认设置

 

问题描述:

默认情况下,chrome将使用以下命令行运行:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
--disable-hang-monitor
--disable-prompt-on-repost
--dom-automation
--full-memory-crash-report
--no-default-browser-check
--no-first-run
--disable-background-networking
--disable-sync
--disable-translate
--disable-web-resources
--safebrowsing-disable-auto-update
--safebrowsing-disable-download-protection
--disable-client-side-phishing-detection
--disable-component-update
--disable-default-apps
--enable-logging
--log-level=1
--ignore-certificate-errors
--no-default-browser-check
--test-type=ui
--user-data-dir="C:\Users\nik\AppData\Local\Temp\scoped_dir1972_4232"
--testing-channel=ChromeTestingInterface:1972.1
--noerrdialogs
--metrics-recording-only
--enable-logging
--disable-zero-browsers-open-for-tests
--allow-file-access
--allow-file-access-from-files about:blank

我需要重写(删除)所有命令--disable-*,因为没有等效命令--enable-*

最后,我要使用以下命令行运行浏览器:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"    
--dom-automation
--full-memory-crash-report
--no-first-run
--safebrowsing-disable-auto-update
--safebrowsing-disable-download-protection
--enable-logging
--log-level=1
--ignore-certificate-errors
--test-type=ui
--user-data-dir="C:\Users\nik\AppData\Local\Temp\scoped_dir1972_4232"
--testing-channel=ChromeTestingInterface:1972.1
--noerrdialogs
--metrics-recording-only
--enable-logging
--allow-file-access
--allow-file-access-from-files about:blank

例如,我尝试使用翻译信息栏运行浏览器。我找到了选择--enable-translate

capabilities = DesiredCapabilities.CHROME.copy()
capabilities['chrome.switches'] = ['--enable-translate']

但这没有帮助,信息栏不会出现。在命令行中,有两个命令:--disable-translate--enable- translate。这是因为有必要删除该命令--disable-default-apps


我已经使用tweepy使用Python来将tweet的文本存储在csv文件中csv.writer(,但是在存储之前我不得不在utf-8中对文本进行编码,否则tweepy会抛出一个奇怪的错误。现在,文本数据存储如下 ...