要使用已运行的Chrome实例和现有的Chrome配置文件启动Puppeteer Sharp,您可以使用Puppeteer的ConnectAsync()
方法连接到现有的Chrome实例并设置配置文件。
以下是一个包含代码示例的解决方案:
using PuppeteerSharp;
class Program
{
static async Task Main(string[] args)
{
// 连接到已运行的Chrome实例
var options = new ConnectOptions
{
BrowserWSEndpoint = "ws://127.0.0.1:9222/devtools/browser/<your_browser_ws_endpoint>"
};
var browser = await Puppeteer.ConnectAsync(options);
// 使用现有的Chrome配置文件
var userDataDir = "<path_to_existing_user_data_directory>";
options = new ConnectOptions
{
BrowserWSEndpoint = "ws://127.0.0.1:9222/devtools/browser/<your_browser_ws_endpoint>",
UserDataDir = userDataDir
};
browser = await Puppeteer.ConnectAsync(options);
// 使用连接的浏览器进行操作
var page = await browser.NewPageAsync();
await page.GoToAsync("https://example.com");
// 关闭浏览器
await browser.CloseAsync();
}
}
请注意,您需要将<your_browser_ws_endpoint>
替换为实际的Chrome实例的WebSocket端点,以及<path_to_existing_user_data_directory>
替换为实际的现有Chrome配置文件的路径。
在上面的示例中,我们首先连接到已运行的Chrome实例,然后使用现有的Chrome配置文件再次连接到同一个实例。然后,您可以使用连接的浏览器进行任何操作,例如导航到网页等。最后,我们关闭浏览器。
请确保您已安装了Puppeteer Sharp NuGet包,并根据需要调整代码以满足您的实际需求。