从数据包标头中捕获URL

时间:2014-07-01 11:43:53

标签: c# .net pcap packet-sniffers

我想捕捉流媒体视频

所以我看到了URL Getter软件,这很好,因为它给了我流媒体链接。

然后我试着自己创造一个,所以我在vb.net 2010上使用了PCAP.net库

最后我获得了该代码的链接>>

If packet.Ethernet.IpV4.Tcp.Payload IsNot Nothing Then
                Dim text = Encoding.Default.GetString(packet.Ethernet.IpV4.Tcp.Payload.ToMemoryStream().ToArray())
                Dim match = Regex.Match(text.ToLower(), "(?<=[get|post])\s(?<Path>/.*?)[\?\s].*?http/1\.1.*?host:\s(?<Host>[A-Za-z0-9\-\.]*)", RegexOptions.Singleline)

                    MyStr = match.Groups("Host").Value & match.Groups("Path").Value


            End If

但它不起作用,因为我意识到URL Getter获取了参数的链接..

所以我的软件获得了这样的链接&gt;&gt; http://www.example.com/stream 但是URL Getter就是这样的&gt;&gt; http://www.example.com/stream?ID=0001

那么如何才能获得与参数????

的链接

1 个答案:

答案 0 :(得分:0)

  1. 您应该只阅读请求的第一行并解析
  2. 您可以使用Uri类来获取URI的某些部分。
  3. 但是,请注意查询字符串是请求的一部分。你可能不想扔掉它。