【问题标题】:Crawl a webpage and grab all dynamic Javascript links抓取网页并抓取所有动态 Javascript 链接
【发布时间】:2016-11-28 02:53:37
【问题描述】:

我正在使用 C# 来抓取网站。一切正常,只是它无法检测到动态 JS 链接。例如,一个包含 100 多个产品的页面可能只有很少的页面,并且“下一页”和“上一页”链接可能是 JS 动态 url,它是在点击时生成的。典型的JS代码如下:

<a href="javascript:PageURL('
        cf-233--televisions.aspx','?',2);">&gt;</a>

在收集页面上的 url 时,是否有获取上述 href 的实际链接?

我正在使用 Html Agility Pack,但对任何其他技术都是开放的。 google了好多次,好像还没有解决办法。

谢谢。

【问题讨论】:

    标签: javascript c# html


    【解决方案1】:

    您是否尝试评估 javascript 以获得实际的 href?可能会有所帮助Parsing HTML to get script variable value

    或者也许你应该检查一下 PageURL 函数的作用(只需用浏览器打开网站并在它的控制台中写入不带括号的 PageURL。它会显示函数的代码)并用 C# 重写它

    【讨论】:

    • 谢谢.. 但这是一个爬虫,所以需要为所有情况自动化。例如,Web 浏览器可以简单地识别所有 url,包括 href HTML 标签以及 JS url。与浏览器类似,我的爬虫需要识别所有 url。可能有许多其他方法可以在页面上生成动态 url。
    • 是的。在一般情况下,可能有任何 javascript 代码,不一定引用一些资源。所以最好跳过那些href。如果不可接受,则应手动处理每个特定情况。
    【解决方案2】:

    AbotX 允许您在页面上呈现 javascript。它是一款功能强大的网络爬虫,具有高级功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-08
      • 1970-01-01
      • 2022-11-02
      • 1970-01-01
      • 1970-01-01
      • 2019-02-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多