问题标签 [puppeteer-sharp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2863 浏览

javascript - 从 JS Puppeteer 代码更改为 PuppeteerSharp C#

我有Javascript puppeteer代码,并且PuppeteerSharp for C#. 我知道这个图书馆很相似,而且我知道他们的网站。

但是我的问题是我几乎无法管理这个库,每个库都有很多方法,而且很难找到需要的方法,即使我有用 JS 编写的工作示例。

请帮我将 JS 代码重写为 C#,这样它会做类似的事情。或者至少是函数名称,例如 JS (puppeteer) 方法 = C# (puppeteerSharp) 方法。

到目前为止我所拥有的:

但它是无限计数并且不会停止。在元素为 1275 之后,它会在 while 循环中引发有关我的方法的错误。

0 投票
2 回答
1212 浏览

asp.net-core - 使用 PuppeteerSharp 的 AspNet Core Razor 视图

我们可以将 PuppeteerSharp 与 Razor View 一起使用吗?我想从 AspNetCore 应用程序中的 Razor View 发送 HTML 并以 PDF 格式获取输出。任何参考资料或代码示例都会有所帮助

0 投票
0 回答
45 浏览

puppeteer-sharp - PupeteerSharp - 浏览器锁定功能

我正在尝试抓取由 JS 发起的超链接。问题是当我单击诸如标签之类的项目时,浏览器会在“请求”事件中导航离开。然后点击时以下所有元素都会出错,因为页面不再存在。有没有办法阻止页面导航?

谢谢!

0 投票
2 回答
477 浏览

puppeteer-sharp - PupeteerSharp - 如何确定元素类型

我正在从页面中提取输入元素列表,并想确定每个元素的“类型”。

例如:

但是,GetType 不正确。有没有办法从元素中确定输入类型?

0 投票
1 回答
772 浏览

c# - 处理页面会导致警告。这是一个问题吗?

我有以下代码创建,然后通过 PuppeteerSharp 关闭 Chrome 页面:

最后一条语句 (page.Dispose) 导致写出以下警告:

PuppeteerSharp.Page:警告:协议错误:连接已关闭。该页面很可能已关闭。

我有以下问题:

  1. 这是一个问题吗?我可以忽略这个警告吗?
  2. .Dispose关闭页面后是否需要关闭页面?
0 投票
2 回答
2131 浏览

c# - 无法单击具有特定属性的按钮

我正在使用puppeteer-sharp从网页获取 AJAX 加载的内容。我需要提交具有以下结构的表单:

首先,我填写了两个可用的输入:login-username1login-password1,使用以下代码:

问题是按钮没有属性,id只有一个name属性,所以我的代码返回:

PuppeteerSharp.EvaluationFailedException:'评估失败:DOMException:无法在'文档'上执行'querySelector':'name = login-submit'不是有效的选择器。在puppeteer_evaluation_script :1:33'

这个错误发生在

该方法ClickAsync需要一个选择器,并且该按钮只有一个唯一的name,但似乎我无法单击该按钮。

注意:Browser变量被实例化如下:

0 投票
0 回答
2056 浏览

asp.net-core - 将 PuppeteerSharp 与 .net 核心 api 一起使用

我正在关注示例“PuppppeterSharpAspNetFrameworkSample”(4.7.2)。但是我无法让它工作。是否可以提供一些代码或链接来说明这个词在 .net core api 2.2 中的工作方式?

}

它抛出的错误是

0 投票
2 回答
2184 浏览

c# - 如何在 Puppetetteer-Sharp 中设置 cookie?

我试图在 Puppetteer-Sharp 中设置一个 cookie,转到一个页面,并读取页面上一个元素的 innerHtml,但是,似乎从未设置过 cookie。如何在 Puppetetteer-Sharp 中正确设置 cookie?

在 Chromium 开发控制台中,您可以看到该域没有 cookie: 没有饼干

从 Visual Studio 调试器中,可以看到 Puppeteer 认为页面上没有设置 cookie:

页面上没有 cookie

0 投票
1 回答
1959 浏览

c# - 如何从 puppeteer-sharp 中获取可读的浏览器/页面错误?

我正在使用 puppeteer-sharp 将一些页面呈现为 PDF。我想知道页面在浏览器中运行时渲染是否有任何问题,所以我设置了一些事件处理程序:

当我在页面上收到错误时,args.Message.Text似乎只包含"ERROR JSHandle@error". 这不是很有帮助。

我在页面上测试正常console.log并且记录正常,这似乎是错误的问题。

我需要做些什么才能从这些错误中获得可读性吗?

更新:我尝试访问args.Message.Args和使用JsonValueAsync()这些 args,但这似乎会导致一些异步怪异,破坏 devtools 协议,因为我开始收到超时错误,然后错误抱怨网络套接字被破坏。

看来这是 puppeteer 本身的问题:https ://github.com/GoogleChrome/puppeteer/issues/3397

0 投票
1 回答
208 浏览

c# - 如何在 UWP 应用程序中使用 PuppeteerSharp?

我正在尝试在 UWP 应用程序中使用 PuppeteerSharp。所有依赖项似乎都很好,但我遇到了铬位置的权限问题。

UWP 中的文件权限非常有限,但我的应用程序仍然具有广泛的文件访问权限。唯一的问题是我只能通过某种用户交互(如选择器)打开文件。

有没有办法解决这个问题?