【问题标题】:Loading Javascript with C# Console Application使用 C# 控制台应用程序加载 Javascript
【发布时间】:2017-06-04 19:32:06
【问题描述】:

我目前正在使用 htmlAgilityPack 进行一些网页抓取,但是我遇到了一个包含脚本标签的网站,我无法加载它进行抓取。我对网络几乎没有经验,不确定如何正确加载网页并转换回 htmlAgility 可以解析的内容。

几乎,当我在 chrome 中检查元素时,有一个表格,但 htmlAgilityPack 读取了一个脚本标签。

任何帮助将不胜感激。

谢谢

【问题讨论】:

  • 已经有很多关于“抓取动态页面”的问题...确保搜索并显示您尝试过的方法以及它们如何不适合您的情况。
  • 所有这些方法都不适用于我说我正在使用的控制台应用程序。
  • google.com/search?q=c%23+scraping+dynamic+pages+javascript 提供两种选择的答案...使用 Google 或 Bing 可能比您使用的任何搜索引擎更好...
  • 谢谢。这些方法适用于几个包含 Javascript 的站点,但在某些站点上不起作用。这是我的初始化方式:

标签: c# web-scraping web-crawler console-application html-agility-pack


【解决方案1】:

我也遇到过类似的问题。非常烦人的是,它们并不是在 C# 控制台中的所有网站上执行的统一方法。

但是,根据您正在查看的站点,可能在 html 的 head 部分的元标记中包含一些信息。当我制作应用程序来获取 Youtube 订阅计数时,我发现它在元标记中包含计数(我假设此信息在此处供脚本使用)。这可能与您正在抓取的网页类似。

为此,我首先添加了一个

document.save(//put a link to where the html file needs to go)

然后我在 Google Chrome 中打开了 html 文档,打开了开发工具并搜索了“订阅”(您可以将其替换为您要查找的任何内容)。希望根据您正在抓取的网站,可能会有一个包含一些信息的标签。

祝你好运! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-25
    • 2019-01-18
    • 2021-11-14
    相关资源
    最近更新 更多