在 Python 中,當在本地 Chrome 瀏覽器中使用本地 chromedriver 時,我可以輕松地將瀏覽器“navigator.webdriver”屬性更改為 false。
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument("--disable-blink-features=AutomationControlled")
driver = webdriver.Chrome(chrome_options=options)
driver.get([some url])
完成上述操作后,在 Chrome 瀏覽器控制臺中,navigator.webdriver 會顯示“false”。
但我不知道如何將以上內容翻譯成 Perl。以下代碼仍將 navigator.webdriver 保留為“true”。那么如何在 Perl 中實作上面的 Python 代碼呢?是否有可能(理想情況下不使用遠程獨立硒服務器)?
use strict;
use warnings;
use Selenium::Chrome;
my $driver = Selenium::Chrome->new(
custom_args => '--disable-blink-features=AutomationControlled' );
$driver->get([some url]);
任何幫助將不勝感激!
uj5u.com熱心網友回復:
需要extra_capabilities搭配使用goog:chromeOptions
my $drv = Selenium::Chrome->new(
'extra_capabilities' => {
'goog:chromeOptions' => {
prefs => { ... },
args => [
'window-position=960,10', 'window-size=950,1180', # etc
'disable-blink-features=AutomationControlled'
]
}
}
);
(我不知道disable-blink-features與“ navigator.webdriver ”有什么關系)
有關建構式中可用的屬性串列以及extra_capabilities,請參閱Selenium::Remote::Driver,Selenium::Chrome 從中繼承。
對于 Chrome 特定的功能,請參閱chromedriver 中的“可識別的功能”,更一般地,請參閱Selenium 檔案和W3C WebDriver 標準。?
?具體來說
Selenium 檔案中的WebDriver 功能,以及
WebDriver 標準中的功能和擴展(“額外”)功能
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/450444.html
