【问题标题】:Web Crawling Sites with Javascripts or web forms使用 Javascript 或 Web 表单的 Web 爬网站点
【发布时间】:2011-02-02 10:12:21
【问题描述】:

我有一个网络爬虫应用程序。它成功爬取了最常见和最简单的网站。现在我遇到了一些类型的网站,其中 HTML 文档是通过 FORMS 或 javascripts 动态生成的。我相信他们可以被抓取,我只是不知道如何。现在,这些网站不显示实际的 HTML 页面。我的意思是,如果我在 IE 或 firefox 中浏览该页面,HTML 代码与 IE 或 firefox 中的实际内容不匹配。这些站点包含文本框、复选框等...所以我相信它们就是所谓的“Web 表单”。其实我对网络开发不太熟悉,如果我错了,请纠正我。

我的问题是,有没有人和我现在情况相似并且成功解决了这些类型的“挑战”?有人知道有关网络爬虫的书或文章吗?那些属于这些高级类型的网站?

谢谢。

【问题讨论】:

    标签: c# javascript windows webforms


    【解决方案1】:

    我发现一篇涉及深度网络的文章非常有趣,我认为这回答了我上面的问题。

    http://www.trycatchfail.com/2008/11/10/creating-a-deep-web-crawler-with-net-background/

    一定会喜欢这个的。

    【讨论】:

      【解决方案2】:

      AbotX 处理开箱即用的 javascript。不过它不是免费的。

      【讨论】:

        【解决方案3】:

        这里有两个不同的问题。

        表格

        根据经验,抓取工具不会触摸表单。

        可能适合为特定网站编写一些东西,提交预先确定的(或半随机的)数据(特别是在为您自己的网络应用程序编写自动化测试时),但一般的爬虫应该不理会它们。

        http://www.w3.org/TR/html4/interact/forms.html#h-17.13 上提供了描述如何提交表单数据的规范,可能有一个 C# 库会有所帮助。

        JavaScript

        JavaScript 是一个相当复杂的野兽。

        你可以通过三种常见的方式来处理它:

        1. 编写您的爬虫,使其复制您关心的特定网站的 JS 功能。
        2. 自动化网络浏览器
        3. Rhinoenv.js 一起使用

        【讨论】:

        • 嗨大卫,感谢您的信息。这是一个好的开始。你提到了一个通用的爬虫。实际上,这就是我正在设计的。我试图使其尽可能通用。我正在寻找一本关于网络爬虫的好书或任何资源。我找不到一个。你知道吗?再次,tnx。
        猜你喜欢
        • 2021-01-14
        • 2022-09-25
        • 2012-09-03
        • 1970-01-01
        • 2014-11-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-24
        相关资源
        最近更新 更多