c# - puppeteer 师 C# : Connecting to Running Chrome Instance

标签 c# .net asp.net-core puppeteer puppeteer-sharp

我目前正在运行 PuppeteerSharp v1.19.0 来启动浏览器并抓取网页。需要能够连接到现有的 chrome 实例并自动执行任务。我怎样才能实现这个 PuppeteerSharp?通过以下内容,我可以使用 PuppeteersSharp 启动 Chrome 而不是 Chromium,但我还没有找到如何连接到现有的 Chrome 实例。感谢所有帮助。

using PuppeteerSharp;

new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision).GetAwaiter().GetResult();
_browser = Puppeteer.LaunchAsync(new LaunchOptions { Headless = false, ExecutablePath = @"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" }).GetAwaiter().GetResult();

最佳答案

首先,您需要启动 Chrome 并启用远程调试。 例如,如果您使用 --remote-debugging-port=2122 标志启动 Chrome,您就知道您将能够使用 http://127.0 连接到浏览器.0.1:2122 网址。

其次,如果您想连接到现有浏览器,则需要调用ConnectAsync而不是LaunchAsync

拥有这一切。如果要做这样的事情:

var browser = await Puppeteer.ConnectAsync(new ConnectOptions
{
    BrowserURL = "http://127.0.0.1:2122"
}));

关于c# - puppeteer 师 C# : Connecting to Running Chrome Instance,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57876123/

相关文章:

c# - 有没有办法在 ListView 中嵌套分组?或者我必须使用 TreeView 吗?

c# - 在运行 select 之前检查容器/集合是否存在

.net - WPF 应用程序和 ClickOnce 的试用期

c# - 多维数组中的重复次数

c# - 如何从泛型函数中检索值类型值?

c# - Windows 应用程序 Java Servlet 参数传递

asp.net-core - 从 .net core 5 中的 View 访问 Controller 实例

c# - 使用字符串作为 Id 测试详细信息操作

azure - Azure Functions 上的身份验证如何工作

c# - 空字符串 ""何时是有效的日期时间字符串格式?