如何浏览网站和“我的信息”

时间:2015-09-09 07:34:47

标签: c# asp.net httpwebrequest

我想通过网站“模拟”导航并解析回复。

我只是想在开始之前确保我做了一些合理的事情,我看到了两个选项:

  1. 使用WebBrowser类。
  2. 使用HttpWebRequest类。
  3. 所以我最初使用的是HttpWebRequest,只是解析响应。

    你们有什么想法?

    还想问一下,我使用c#导致它是我最强的语言,但是用于从网站挖掘这些东西的常用语言是什么?

3 个答案:

答案 0 :(得分:0)

如果你手动开始这样做,你可能最终会硬编码很多情况。尝试使用Html Agility Pack或其他支持xpath表达式的内容。

有很多挖掘和ETL工具可用于严格的数据挖掘需求。

答案 1 :(得分:0)

对于“用户模拟”,我建议使用Selenum web driverPhantomJS,这要快得多,但在浏览器模拟方面有一些限制,而Selenium提供几乎100%的浏览器功能支持。

答案 2 :(得分:0)

如果您要从网站挖掘数据,您必须先做一些事情才能对您正在挖掘的网站“礼貌”。您必须遵守网站robots.txt中设置的规则,该规则几乎总是位于www.example.com/robots.txt。

然后使用HTML Agility Pack遍历网站。

或使用html2xhtml将html文档转换为xhtml。然后使用xml解析器遍历网站。

请记住:

  1. 检查重复的网页。 (一般的想法是在每个网址上散列每个html文档。查找(超级)带状疱疹)
  2. 尊重robots.txt
  3. 从每个页面获取绝对网址
  4. 从队列中过滤重复的网址
  5. 跟踪您访问过的网址(即时间戳)
  6. 解析你的HTML文档。并保持队列更新。
  7. 关键字:robots.txt,绝对网址,HTML解析器,网址规范化,墨卡托计划。

    玩得开心。