首页新闻找找看学习计划

制作监控百度云私密链接时的疑惑

0
悬赏园豆:80 [已解决问题] 解决于 2016-09-09 18:04

有这么一批百度云私密链接需要监控,定时查看是否挂挡了,请求的时候有个问题,百度云私密链接,比如http://pan.baidu.com/s/1o7QhUps,它在请求过程中还会进行302跳转,跳转到http://pan.baidu.com/share/init?shareid=3900055188&uk=1100738292,因此我写了这么个程序

 HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://pan.baidu.com/s/1o7QhUps/");
            req.Method = "Get";
            req.Accept = "text/html";
            
            HttpWebResponse myResp = (HttpWebResponse)req.GetResponse();
            if (myResp.StatusCode == HttpStatusCode.Redirect)
            { Console.WriteLine("redirected to:" + myResp.GetResponseHeader("Location")); }

现在问题就是在请求如
http://pan.baidu.com/s/1o7QhUps 这种类型的链接后,直接返回远程服务器返回错误: (403) 已禁止,而访问http://pan.baidu.com/share/init?shareid=3900055188&uk=1100738292这种就没事

任意球的主页 任意球 | 初学一级 | 园豆:107
提问于:2016-09-09 17:48
< >
分享
最佳答案
1

请求http://pan.baidu.com/s/1o7QhUps的时候 请带上一个交BAIDUID的cookie。谢谢,不谢

收获园豆:78
czd890 | 大侠五级 |园豆:8315 | 2016-09-09 17:56

另:如果你要判断302.请记得request.AllowAutoRedirect

czd890 | 园豆:8315 (大侠五级) | 2016-09-09 18:01

确实有用,十分感谢。

任意球 | 园豆:107 (初学一级) | 2016-09-09 18:03
其他回答(1)
0
req.Accept = "text/html";
这句话下面 加上下面这两句试试

req.ContentType = "application/x-www-form-urlencoded";

req.UserAgent = "Mozilla/5.0 (Windows NT 6.1; rv:19.0) Gecko/20100101 Firefox/19.0";

 

 

收获园豆:2
刘宏玺 | 园豆:14004 (专家六级) | 2016-09-09 17:54

嗯,试过,还是不行,不过感谢回复。

支持(0) 反对(0) 任意球 | 园豆:107 (初学一级) | 2016-09-09 18:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册