【问题标题】:How to use a custom downloads folder and the launcher executable path?如何使用自定义下载文件夹和启动器可执行路径?
【发布时间】:2018-05-31 23:36:04
【问题描述】:

我想在特定路径下下载 Chromium。但是为了能够使用同一路径下的可执行文件启动 Chromium,我必须构建一个可执行路径,这似乎有点笨拙。我希望有一个更好的方法我目前正在失踪。这是我的代码的相关版本:

string chromiumDownloadsPath =
    String.Format(
        @"{0}\Puppeteer Sharp downloads",
        baseDirectoryPath
        );

Downloader downloader = new Downloader(chromiumDownloadsPath);
await downloader.DownloadRevisionAsync(chromiumRevision);

var browser = await Puppeteer.LaunchAsync(
    new LaunchOptions
    {
        Headless = true,
        ExecutablePath =
            String.Format(
                @"{0}\Win32-{1}\chrome-win32\chrome.exe",
                chromiumDownloadsPath,
                chromiumRevision
                )
    },
    chromiumRevision
    );

看起来特别笨拙的是需要添加路径的"\Win32-{1}\chrome-win32" 部分。我期待Puppeteer.LaunchAsync“知道”如何在给定修订号的情况下找到可执行文件,因为它“应该”已经“知道”我已经指示 Puppeteer Sharp 将 Chromium 构建下载到自定义目录,我认为它已经也有足够的信息来确定平台。

【问题讨论】:

    标签: puppeteer-sharp


    【解决方案1】:

    Downloader 类包含一个方法public string GetExecutablePath(int revision),它完全符合我的预期。因此,LaunchOptions 对象的 ExecutablePath 属性应该是:

            ExecutablePath = downloader.GetExecutablePath(chromiumRevision)
    

    【讨论】:

    • 使用较新的版本,您似乎可以访问以下信息:browserFetcherInstance.ExecutablePath
    猜你喜欢
    • 2023-04-01
    • 2014-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-24
    • 1970-01-01
    • 2020-08-27
    • 2023-02-10
    相关资源
    最近更新 更多