![](/img/trans.png)
[英]Python Selenium Take a Screenshot Of An Whole Page Without Using Headless Mode
[英]Python selenium headless mode missing elements
問題已解決:我將我的用戶代理設置為與我正常瀏覽時使用的相同。 顯然在無頭模式下,您的程序將您的用戶代理更改為“無頭”,亞馬遜一定已經抓住了這一點並阻止了它。 請閱讀以下原始問題:
我正在使用 selenium 來抓取亞馬遜搜索結果頁面。 當我結束它時,我將我的抓取轉移到無頭模式,因為它可以節省效率。 但是在無頭模式下,某些頁面元素不可用,例如贊助品牌。 使用非無頭模式時它工作得非常好,但即使在設置以下選項后使用無頭模式也失敗:
options = Options()
#options.headless = True
options.add_argument("--window-size=1920,1080")
options.add_argument("--disable-extensions")
options.add_argument("--proxy-server='direct://'")
options.add_argument("--proxy-bypass-list=*")
options.add_argument("--start-maximized")
options.add_argument('--headless')
options.add_argument('--disable-gpu')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--no-sandbox')
options.add_argument('--ignore-certificate-errors')
options.add_argument('--allow-running-insecure-content')
driver = webdriver.Chrome(options=options)
PS:我嘗試使用和不使用評論部分以及僅評論部分。
為了清楚起見,我截取了每個示例:這是它在無頭模式下運行時的樣子,這也是它通常的樣子(沒有無頭模式以及普通用戶瀏覽)。 我想知道當我在無頭模式下運行贊助品牌信息時,還需要添加什么才能顯示贊助品牌信息。 我認為這可能是 JavaScript 無法與瀏覽器正常通信的問題?
一如既往,提前謝謝你!!
使用最新的谷歌瀏覽器 v95.0
當您使用普通的google -chrome瀏覽器時,正在使用以下用戶代理:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36
當您使用google-chrome-headless瀏覽器時,正在使用以下用戶代理:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/95.0.4638.69 Safari/537.36
額外的Headless
參數/屬性的存在被攔截為bot 。 因此,您會看到差異。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.