相关疑难解决方法(0)

在无头模式下通过 Google Chrome 下载文件

我正在以“正常”模式在 Cromedrive 中编写代码并且工作正常。当我更改为无头模式时,它不会下载文件。我已经尝试了我在互联网上找到的代码,但没有用。

chrome_options = Options()
chrome_options.add_argument("--headless")
self.driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=r'{}/chromedriver'.format(os.getcwd()))
self.driver.set_window_size(1024, 768)
self.driver.command_executor._commands["send_command"] = ("POST", '/session/$sessionId/chromium/send_command')

params = {'cmd': 'Page.setDownloadBehavior', 'params': {'behavior': 'allow', 'downloadPath': os.getcwd()}}
self.driver.execute("send_command", params)
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何解决这个问题?

PS:我不一定需要使用 Chomedrive。如果它在另一个驱动器中工作,那对我来说没问题。

python selenium google-chrome selenium-chromedriver google-chrome-headless

19
推荐指数
2
解决办法
2万
查看次数

使用Headless Chrome Webdriver运行Selenium

所以我正在尝试一些硒处理方法,我真的希望它能很快。

所以我的想法是,使用无头的chrome运行它可以使我的脚本更快。

首先,该假设是正确的,还是如果我使用无头驱动程序运行脚本并不重要?

无论如何,我仍然希望它能够正常运行,但是我不知何故,我尝试了不同的方法,并且大多数人建议它可以如十月更新中所说的那样工作

如何配置ChromeDriver通过Selenium以无头模式启动Chrome浏览器?

但是当我尝试这样做时,我得到了奇怪的控制台输出,但它似乎仍然不起作用。

任何小费表示赞赏。

python selenium google-chrome selenium-chromedriver google-chrome-headless

13
推荐指数
4
解决办法
3万
查看次数

从 Selenium 和 chromedriver 下载文件

我无法让 Selenium 和 Chrome (Canary) 下载文件。我正在使用 Java 和 Chrome 59/60(因为我的测试适用于 Windows 和 Linux),并且我正在尝试开始从网页下载文件。

当我从 selenium 中不设置无头模式时,chrome 窗口将打开并下载文件。

当我设置标志时--headless,chrome 窗口不会打开,下载也不会开始。

    public static void chromeDownload() throws IOException, InterruptedException{
            
            ChromeOptions options = new ChromeOptions();
            String downloadFilepath = "";
            
            if (ValidateOS.isWindows()){
                System.out.println("This is a Windows system.");
                System.setProperty("webdriver.chrome.driver", "resources\\driver\\chromedriver.exe");
                options.setBinary("C:\\Users\\Juri\\AppData\\Local\\Google\\Chrome SxS\\Application\\chrome.exe");
                downloadFilepath = "C:\\";
            } else if (ValidateOS.isUnix()){
                System.out.println("This is a Unix system.");
                System.setProperty("webdriver.chrome.driver", "resources/driver/chromedriver");
                options.setBinary("/usr/bin/google-chrome");
                downloadFilepath = "/home/juri/";
            }
            
            // Manage the download
            HashMap<String, Object> chromePrefs = new HashMap<>();
            chromePrefs.put("profile.default_content_settings.popups", 0);
            chromePrefs.put("download.default_directory", …
Run Code Online (Sandbox Code Playgroud)

java selenium google-chrome download

5
推荐指数
1
解决办法
5747
查看次数

Selenium Chrome 驱动程序无头模式不起作用

我的代码一直运行良好,直到昨天我将Google Chrome更新到版本110.0.5481.77。现在它不能在无头模式下工作:

options.add_argument("--headless")
Run Code Online (Sandbox Code Playgroud)

我什至尝试添加options.add_argument("--window-size=1280,700")但仍然不起作用。尽管如果我删除无头选项,它会再次正常工作!

python selenium selenium-chromedriver selenium-webdriver google-chrome-headless

3
推荐指数
1
解决办法
8185
查看次数

如何在机器人框架中使用无头镀铬浏览器启用下载文件?

如何使用Page.setDownloadBehavior在Chrome浏览器开发工具来传递,这样我可以用下面的代码设置为无头镀铬的下载行为?

    Create Chrome Browser
    [Arguments]    ${link_to_open}
    ${chrome_options}=    Evaluate    sys.modules['selenium.webdriver'].ChromeOptions()    sys, selenium.webdriver
    ${prefs}=    Create Dictionary    download.default_directory=${DOWNLOADS_DIR}
   Call Method    ${chrome options}    add_argument    headless 
   Call Method    ${chrome options}    add_argument    disable-gpu
  Selenium2Library.Go To    ${link_to_open}
Run Code Online (Sandbox Code Playgroud)

headless-browser robotframework google-chrome-headless

0
推荐指数
1
解决办法
4039
查看次数