我有一个webcrawler应用程序。它成功抓取了大多数常见和简单的网站。现在我遇到了一些类型的网站,其中HTML文档是通过FORMS或javascripts动态生成的。我相信他们可以爬行,我只是不知道如何。现在,这些网站不显示实际的HTML页面。我的意思是如果我在IE或firefox中浏览该页面,HTML代码与IE或Firefox中的实际内容不匹配。这些网站包含文本框,复选框等...所以我相信他们就是所谓的“Web表单”。实际上我对网络开发并不熟悉,所以如果我错了就纠正我。
我的问题是,是否有人和我一样处于类似情况并成功解决了这些类型的“挑战”?有没有人知道有关网页抓取的某本书或文章?那些与这些高级网站有关的内容?
感谢。
答案 0 :(得分:1)
这里有两个不同的问题。
根据经验,抓取工具不触摸表单。
为特定网站编写一些内容可能是合适的,它提交预定的(或半随机的)数据(特别是在为您自己的Web应用程序编写自动化测试时),但是通用爬虫应该让它们完全独立。
http://www.w3.org/TR/html4/interact/forms.html#h-17.13提供了描述如何提交表单数据的规范,可能有一个C#库可以提供帮助。
JavaScript是一个相当复杂的野兽。
有三种常见的方法可以处理它:
答案 1 :(得分:1)
我找到了一篇解决深度网页的文章,非常有趣,我认为这回答了我上面的问题。
http://www.trycatchfail.com/2008/11/10/creating-a-deep-web-crawler-with-net-background/
喜欢这个。
答案 2 :(得分:0)
AbotX开箱即用。它不是免费的。