【问题标题】:Scraping text into a <span> class with puppeteer-sharp使用 puppeteer-sharp 将文本抓取到 <span> 类中
【发布时间】:2020-02-23 16:23:09
【问题描述】:

我目前正在尝试使用 Puppeteer .NET 恢复 HTML 页面上 &lt;span&gt; 标记之间的文本,但我做不到。这是我正在尝试恢复的部分:

<span class="nbPoints">12</span>

我已经尝试了函数EvaluateFunction,但尝试在控制台中打印它却一无所获

var strValueEst = await page.EvaluateFunctionAsync(
  "()=>document.querySelector('#path > path > nbPoints').textContent"
);

我不再有确切的 Java 请求,但这一定不是问题,因为我通过检查元素复制它并复制完整路径 JS(在 Chrome 中)。

【问题讨论】:

  • 你能分享更多你想要废弃的 HTML 吗?目前尚不清楚该选择器是如何获得代理元素的。
  • @hardkoded 你好,谢谢你的回答,我的例子可能不是很清楚,这部分会更清楚,这是我试图获得的第二个元素,它是一些点。这是包含在
    中的
    本身的代码:ibb.co/rw1xnPc 抱歉,我是 stackoverflow 的新手,找不到如何将代码放在评论中
  • 你确定选择器会起作用吗?
  • @hardkoded 我认为选择器还可以,我从检查元素中提取它,右键单击,复制并复制 JS 路径。然后,我将 => 之后的内容替换为:document.querySelector(“#loyaltyProgramZone> div> div.loyalty-program-left> p.nb-total-points> span.nbPoints”)。再次感谢您的帮助
  • 当我在控制台中输入它时,它会返回:12。好奇怪????

标签: c# puppeteer puppeteer-sharp


【解决方案1】:

尝试使用除“textContent”之外的“innerText”。

var strValueEst = await page.EvaluateFunctionAsync(
  "()=>document.querySelector('#path > path > nbPoints').innerText"
);

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签