【问题标题】:How can I programatically get internet traffic from a web site in C# or C++?如何以编程方式从 C# 或 C++ 的网站获取 Internet 流量?
【发布时间】:2011-01-18 06:47:43
【问题描述】:

如何以编程方式从 C# 或 C++ 中的网站获取 Internet 流量?

我的意思是,如何在不打开浏览器或浏览器控件的情况下做到这一点?

此外,在 IE 和其他浏览器中有某种​​插件,您可以在其中查看浏览器与服务器之间的通信以及返回。有人知道吗?

【问题讨论】:

  • 当您说“获取互联网流量”时,您的意思是“向网络服务器发出 HTTP 请求”还是“确定有多少人正在访问一个网站?”
  • 哇,这很广泛。那里有太多的 HTTP 库,这并不好笑。我认为您需要查找网络编程的介绍,然后查看那里许多可用的 HTTP(和 HTML)库。
  • + 这是重复的 :: stackoverflow.com/q/4721236/482864
  • @Soulseekah:希望可以将另一个标记为重复。这个有更多的答案...就此而言,我相信您可以标记为 mod 注意重复。
  • 天啊,你为什么要问这个 TWICE 并接受两个不同的答案?我应该合并,但是你在另一个问题中选择作为答案的人会失分......

标签: visual-c++ c#-4.0 internet-explorer-8


【解决方案1】:

如果您正在寻找以编程方式请求网页,那么您可以在 C# 中查看 httpwebrequest

此外,在 IE 和其他浏览器中有某种​​插件,您可以在其中查看从浏览器到服务器的通信以及返回。有人知道吗?

您可以查看fiddler

【讨论】:

  • fiddler 是一种选择,但不是有一个直接插入 IE 的插件吗?
【解决方案2】:

查看 C++ 的 cURL http://curlpp.org/ 或者如果你想要更多的低级通信处理检查套接字编程和winsock。您将通过端口连接到服务器并发送 GET 请求,如果页面是 HTML 等,服务器将使用 HTML 代码进行响应。

不过,您必须具备一些基本的 HTTP 协议知识。 http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

【讨论】:

    【解决方案3】:

    将 WebClient.DownloadString() 或 DownloadStringAsync() 与网站地址一起使用。

    【讨论】:

      【解决方案4】:

      WebClient 和 HttpWebRequest 可用于在没有浏览器的情况下与服务器通信

      http://msdn.microsoft.com/en-au/library/system.net.webclient(VS.80).aspx

      http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.aspx

      Fiddler 可以用来监听浏览器通信

      http://www.fiddler2.com/fiddler2/version.asp

      【讨论】:

        【解决方案5】:

        您可以使用 System.Net.HttpWebRequest,它可以让您发送 http get 和 http post 请求。

        【讨论】:

          猜你喜欢
          • 2011-08-29
          • 2010-09-20
          • 1970-01-01
          • 2010-10-05
          • 1970-01-01
          • 2010-10-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多