【问题标题】:How can I get information off of an external web page? [closed]如何从外部网页获取信息? [关闭]
【发布时间】:2012-10-03 15:04:07
【问题描述】:

对于我正在进行的个人项目,我想从网站获取流量数据。有问题的网站在表格的一个单元格中显示了这一点。我可以简单地让我的程序连接到站点,打开页面,然后将该单元格的内容作为字符串获取吗?在 .NET 框架中主要使用 C#。

【问题讨论】:

  • 嗯,这就是你问的问题,“我可以...”。我回答了那个问题。您似乎有兴趣知道这是否可行;它是。您现在可以满怀信心地开始实施解决方案,以后不会发现这是不可能的。
  • 你想做的叫做screen scraping或者web scraping
  • 您要查找的过程称为网络抓取。在许多不同的编程语言中有许多不同的方法可以做到这一点。我很快就找到了这个,它可能对你有一些帮助stackoverflow.com/questions/4377355/…

标签: c# .net web


【解决方案1】:

假设它是一个简单的 GET,使用 System.Net.WebClient 到 DownloadString(...),然后使用 RegExpr 查找单元格的内容。

【讨论】:

    【解决方案2】:

    看看WebFetch

    这是一个很好的获取 HTTP 内容的教程和示例代码。

    【讨论】:

      【解决方案3】:

      这是一种通常称为“网页抓取”的操作。您可以使用 WebClient 手动完成:

      using System.Net;
      
      using (WebClient client = new WebClient ()) 
      {
          html = client.DownloadString(@"http://somesite.com/somepage.html");        
      }
      

      然后解析字符串以查找您想要的数据。这可能很容易,也可能非常困难,具体取决于您要抓取的页面的复杂程度。

      更好的方法是使用像HTML Agility Pack 这样的网络抓取库。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多