例如我现在有个url:http://s.click.taobao.com/t?e=zGU34CA7K%2BPkqB07S4%2FK0CITy7klxn%2Fr3HZwuuY0VC7BwYV5BmFnvKI7HGDxM%2FgYRB%2FsRLBp%2FBJkoSEFH4Vgeix0DJ4W%2B9nMtBRAj70c%2FSCHnqz9c%2BzFKUTZVtJfc9yDLq4m%2FQEHz4pnFds74oNbPKSJ8An7CAMiFtUwprB5kUAqRgyQE7o25Dp4i53QkgcmrA%3D%3D&spm=2014.21319780.1.0
在输入地址栏回车后转换为:http://item.taobao.com/item.htm?id=15494369708&ali_trackid=2:mm_32826865_0_0:1364959209_4k3_167280768&spm=2014.21319780.1.0
需求:我用C#代码怎么通过第一个url得到第二个url
18 回答
幕布斯7119047
TA贡献1794条经验 获得超8个赞
这是个重定向的链接,并且要获取到你要的那个链接需要跳转3次,一次302,一次js跳转,再302即可获取目标。
2楼的方法是可行的,只是没说到点子上。使用HttpWebRequest 去请求这个连接。必须设HttpWebRequest的AllowAutoRedirect属性为false。这样HttpWebRequest就不会去自动重定向。请求完成之后可以在响应头中获取Location即可获取到链接1。
拿链接1再去请求,获取网页内容。拿到内容之后这步比较复杂,你需要分析js,并按照js的算法生成链接2.用HttpWebRequest去请求链接2,请求完成之后可以在响应头中获取Location即是你需要的链接。
我估计你很难用HttpWebRequest实现,简单点的方法就是webbrowser控件,待相应完成的时候,获取他的Url属性就行了。
- 18 回答
- 0 关注
- 733 浏览
添加回答
举报
0/150
提交
取消