简体   繁体   English

使用 selenium 的无头模式不起作用

[英]Headless mode using selenium is not working

As whatsapp require barcode to scan, I want it to scan for the first time and afterwards it will run in headless mode.由于 whatsapp 需要条形码才能扫描,我希望它第一次扫描,然后它将以无头模式运行。 Any Suggestion, here's my code?任何建议,这是我的代码?

from selenium import webdriver

from selenium.webdriver.chrome.options import Options

options = Options()

options.headless=True

options.add_argument("headless")

#options.headless = True

options.add_argument("no-sandbox")

options.add_argument("start-maximized")

options.add_argument("window-size=1900,1080");

options = webdriver.ChromeOptions()

#options.add_argument(CHROME_PROFILE_PATH)

browser=webdriver.Chrome(executable_path='C:\\ChromeDriver\\chromedriver_win32\\chromedriver.exe', options=options)

browser.maximize_window()

browser.get('https://web.whatsapp.com/')

You could do a screenshot of the page, then access it, scan it with phone and it should work as if you scanned it in browser.您可以对页面进行截图,然后访问它,用手机扫描它,它应该可以像在浏览器中扫描一样工作。 you can use the screenshot function of selenium itself I guess.您可以使用 selenium 本身的屏幕截图 function 我猜。

Remove options = webdriver.ChromeOptions(), you re assigning empty options object to options identifier again.:删除 options = webdriver.ChromeOptions(),您重新将空选项 object 分配给选项标识符。:

Also add remote debugging port to access ui of headless browser,还要添加远程调试端口来访问无头浏览器的ui,

Close all chrome before running the script,在运行脚本之前关闭所有 chrome,

from selenium import webdriver

from selenium.webdriver.chrome.options import Options

options = Options()

options.headless=True

options.add_argument("--remote-debugging-port=1559")

options.add_argument(
"user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36")

options.add_argument("no-sandbox")

options.add_argument("start-maximized")

options.add_argument("window-size=1900,1080");


browser=webdriver.Chrome(executable_path='C:\ChromeDriver\chromedriver_win32\chromedriver.exe', options=options)

browser.maximize_window()

browser.get('https://web.whatsapp.com/')

input("Scan the bar code and press enter")

Now open another chrome and navigate to:现在打开另一个 chrome 并导航到:

  http://127.0.0.1:1559

Click the inspectable link:单击可检查的链接:

在此处输入图像描述

在此处输入图像描述

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM