如何使用自定义下载文件夹和启动器可执行路径?
How to use a custom downloads folder and the launcher executable path?
我想在特定路径下下载 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
到 'know' 如何找到给定修订号的可执行文件,因为它 'should' 已经 'know' 我指示 Puppeteer Sharp 下载 Chromium 构建到自定义目录,我认为它也有足够的信息来确定平台。
Downloader
class 包含一个方法 public string GetExecutablePath(int revision)
完全符合我的预期。 LaunchOptions
对象的 ExecutablePath
属性 因此应该是:
ExecutablePath = downloader.GetExecutablePath(chromiumRevision)
我想在特定路径下下载 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
到 'know' 如何找到给定修订号的可执行文件,因为它 'should' 已经 'know' 我指示 Puppeteer Sharp 下载 Chromium 构建到自定义目录,我认为它也有足够的信息来确定平台。
Downloader
class 包含一个方法 public string GetExecutablePath(int revision)
完全符合我的预期。 LaunchOptions
对象的 ExecutablePath
属性 因此应该是:
ExecutablePath = downloader.GetExecutablePath(chromiumRevision)