web-scraping - 如何使用 Puppeteer Sharp 从 h1 标签中获取文本?

标签 web-scraping puppeteer sharp

我的问题是: 我正在尝试联系 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 的值?

非常感谢。

最佳答案

你就快到了!

您需要一个 EvaluateFunctionAsync<>()QuerySelectorAsync() 之后返回 H1 的内部文本

var texto = await page.QuerySelectorAsync("h1").EvaluateFunctionAsync<string>("_ => _.innerText");

关于web-scraping - 如何使用 Puppeteer Sharp 从 h1 标签中获取文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63384204/

相关文章:

python - 使用 Beautiful Soup 刮掉雅虎财经的标准差

Python 请求 - 403 禁止 - 尽管设置了 `User-Agent` header

python - Scrapy python csv 输出在每行之间有空行

node.js - 锐包 Heroku 部署问题

ruby - 如何阻止来自 Ruby Mechanize Gem 的访问?

javascript - 使用 Puppeteer 滚动页面的侧栏

node.js - Puppeteer 与 Express Router Node JS 的并行性。如何在保持并发的情况下在路由之间传递页面

javascript - 使用 Puppeteer 抓取 Google 搜索结果链接

javascript - Node.js:读取被覆盖的图片,仅引用初始图像

firebase - 从第一张图片生成的缩略图在 Firebase 存储中为其他人复制