【问题标题】:How can I take the text from the h1 tag with Puppeteer Sharp?如何使用 Puppeteer Sharp 从 h1 标签中获取文本?
【发布时间】:2020-12-02 15:44:08
【问题描述】:

我的问题是: 我试图连接到http://example.com con Puppeteer Sharp,我想在控制台中显示该页面中 de h1 标记的文本。文本是“示例域”。

我有这个代码:

  await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);
        var browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {
            Headless = true
        });

        using (var page = await browser.NewPageAsync())
        {
            await page.GoToAsync("http://example.com");
            await page.WaitForSelectorAsync("h1");
            var texto = await page.QuerySelectorAsync("h1");
            Console.WriteLine(texto.ToString());                
        }
        await browser.CloseAsync();

但控制台显示“JSHandle@node”。如何从 JSHandle@node 中获取 h1 的值?

非常感谢。

【问题讨论】:

    标签: web-scraping puppeteer sharp


    【解决方案1】:

    你快到了!

    您需要一个 EvaluateFunctionAsync()QuerySelectorAsync()

    之后返回 H1 的 innerText
    var texto = await page.QuerySelectorAsync("h1").EvaluateFunctionAsync<string>("_ => _.innerText");
    

    【讨论】:

      猜你喜欢
      • 2019-02-06
      • 1970-01-01
      • 2022-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-03
      • 2016-05-04
      • 1970-01-01
      相关资源
      最近更新 更多