この特定のスクリプトで(Pythonで)Selenium経由でChromeを開くたびに、Chromeページが自動的に開く方法を見つけようとしています。別のユーザーエージェントが選択されている場合-この場合はMicrosoft Edge Mobile(ただし、デスクトップからアクセスします)。
そのため、いくつかの調査を行った後、次のコードをまとめることができました。これは、ユーザーエージェントスイッチをChromeで実行し、新しいBing.comページを開くと思います:
selenium import webdriverから
selenium.webdriver.chrome.optionsから
import opts = Options()
opts.add_argument( "user-agent = Mozilla/5.0(Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 640 XL LTE)AppleWebKit/537.36(KHTML、Geckoなど)Chrome/42.0 .2311.135 Mobile Safari/537.36 Edge/12.10166 ")
ドライバー= webdriver.Chrome(chrome_options = opts)
ドライバー= webdriver.Chrome( "D:_")
driver.get( " https://www.bing.com/ ")
ただし、コードは機能していないようで、指定されたWebページを開く前に停止します。私は、コードの前半がオフになっていることをかなり確信していますが、どのようにすればよいかよくわかりません。すべての助けが深く感謝されます。
ランダムユーザーエージェントを使用する簡単な方法は、Pythonの fake_useragent
モジュールは次のとおりです。
from Selenium import webdriver
from Selenium.webdriver.chrome.options import Options
from fake_useragent import UserAgent
options = Options()
ua = UserAgent()
userAgent = ua.random
print(userAgent)
options.add_argument(f'user-agent={userAgent}')
driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\WebDrivers\ChromeDriver\chromedriver_win32\chromedriver.exe')
driver.get("https://www.google.co.in")
driver.quit()
3回連続して実行した結果は次のとおりです。
最初の実行:
Mozilla/5.0 (Windows NT 4.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36
2回目の実行:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.517 Safari/537.36
3回目の実行:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1309.0 Safari/537.17
Selenium.webdriverのChromeOptionsを使用する必要があります。
from Selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--user-agent="Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Microsoft; Lumia 640 XL LTE) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.10166"')
driver = webdriver.Chrome(chrome_options=chrome_options)
これは動作するはずです。