簡體   English   中英

Python/Selenium 隱身/私有模式

[英]Python/Selenium incognito/private mode

我似乎找不到任何關於如何使 Selenium 在隱身模式下打開瀏覽器的文檔。

我是否必須在瀏覽器中設置自定義配置文件?

首先,由於selenium默認啟動一個帶有干凈、全新配置文件的瀏覽器,因此您實際上已經在進行私密瀏覽 參考:


但是無論如何您都可以嚴格執行/打開隱身/私密模式。

對於 chrome pass --incognito命令行參數

--incognito使瀏覽器直接以隱身模式啟動。

from selenium import webdriver

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")

driver = webdriver.Chrome(chrome_options=chrome_options)
driver.get('https://google.com')

僅供參考,這是它會打開的內容:

節日快樂!

對於火狐,設置browser.privatebrowsing.autostartTrue

from selenium import webdriver

firefox_profile = webdriver.FirefoxProfile()
firefox_profile.set_preference("browser.privatebrowsing.autostart", True)

driver = webdriver.Firefox(firefox_profile=firefox_profile)

僅供參考,這對應於設置中的以下復選框:

在此處輸入圖片說明

注意: chrome_options 現在已棄用。 我們可以使用 'options' 而不是 chrome_options

from selenium import webdriver

options = webdriver.ChromeOptions()
options.add_argument("--incognito")

driver = webdriver.Chrome(options=options)
driver.get('https://google.com')

有一種非常簡單的方法可以在隱身模式下打開窗口:

from selenium.webdriver.chrome.options import Options

chrome_options = Options()
# incognito window
chrome_options.add_argument("--incognito")

您還可以使用此庫來最大化窗口等,請參閱文檔: https : //seleniumhq.github.io/selenium/docs/api/rb/Selenium/WebDriver/Chrome/Options.html

我已經使用 ChromeOptions 和 FirefoxOptions 在隱身/隱私模式下成功啟動了 Chrome 和 Firefox,使用 Java 中的代碼片段如下:

    //For Firefox
    FirefoxOptions options = new FirefoxOptions();
    options.addArguments("-private");
    DesiredCapabilities caps = new DesiredCapabilities();
    caps.setCapability("moz:firefoxOptions",options);

    //For Chrome
    ChromeOptions options = new ChromeOptions();
    options.addArguments("-incognito");
    caps.setCapability(ChromeOptions.CAPABILITY, options);

    WebDriver driver = new RemoteWebDriver(new URL(URL), caps);

對於火狐:(Python)==>

from selenium import webdriver    
firefox_options = webdriver.FirefoxOptions()
firefox_options.add_argument("--private")
browser = webdriver.Firefox(firefox_options=firefox_options)

在 Chrome 瀏覽器中,您可以使用 Python 執行此操作,如下所示

正如您在使用 chrome 時所看到的,您可以在 chrome 瀏覽器的選項菜單部分選擇隱身模式。 因此,當您使用 selenium 時,您可以使用更改選項的內容

chrome_options = webdriver.ChromeOptions()

所以,代碼是:

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")

driver = webdriver.Chrome(executable_path="<path of chrome_driver.exe file>",options=chrome_options)

因此,您唯一要做的就是將這個給定的值賦予“webdriver.Chrome”另一個參數,即“options”。

//We need to add argument "--incogneto" in ChromeOptions object and pass this ChromeOptions instance to the web driver initialization.  
  
    
    ChromeOptions options = new ChromeOptions()
    options.addArgument("start-maximized");
    options.addArgument("--incognito");
    ChromeDriver driver = new ChromeDriver(options);
    driver.get("https://investopedia.com");

電源外殼

try{
    # Import the Selenium DLLs
    Add-Type -Path "$Seleniumlib\Selenium.WebDriverBackedSelenium.dll"
    Add-Type -Path "$Seleniumlib\WebDriver.dll"
    Add-Type -Path "$Seleniumlib\WebDriver.Support.dll"
}
catch [Exception]{
    Write-Host ("Error: {0}" -f $_.Exception.Message)
    exit 1
}

$options = New-Object OpenQA.Selenium.Chrome.ChromeOptions
$options.AddArgument("--incognito")
$driver = New-Object OpenQA.Selenium.Chrome.ChromeDriver($options)

對於帶有歌劇的蟒蛇

from selenium import webdriver

options =  webdriver.opera.webdriver.Options()
options.add_argument("private")
driver = webdriver.Opera(executable_path="operadriver",options=options)

一些選項已被棄用,所以對於 Firefox 它對我來說是這樣的:

from selenium.webdriver.firefox.options import Options
from selenium import webdriver

firefox_options = Options()
firefox_options.add_argument("-private")
driver = webdriver.Firefox(options=firefox_options)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM