http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 6090|回复: 17

[求助] 求助一个Get的问题

[复制链接]
发表于 2015-1-14 13:25:01 | 显示全部楼层 |阅读模式
本帖最后由 diorlv2010 于 2015-1-14 14:16 编辑

我在获取大众点评短信验证码的时候,抓获的信息如下(网站注册情况)
[HTML] 纯文本查看 复制代码
(Request-Line)        GET /ajax/json/account/reg/mobile/send?m=13810166666&flow=t&callback=DP._JSONPRequest._9 HTTP/1.1
Accept        */*
Accept-Encoding        gzip, deflate
Accept-Language        zh-CN
Connection        Keep-Alive
Cookie        cy=2; cye=beijing; _hc.v="\"dd8345c6-d23c-4d65-b58d-8e73c226a22e.1420788885\""; ua=13810166666; _dp.ac.v=7eb0cb66-3e89-4210-bfb9-5104bb4bd607; aburl=1; _tr.u=KLka8P5Efjg4oxgl; _tr.s=heia3nhCheTUHzZw; ctu=8329775f56d722536b773f59d5ea3ce2f75edebd1a08b15b7c78d48778b60573; PHOENIX_ID=0a016a18-14ae62b44e5-42846e
Host        [url=http://www.dianping.com]www.dianping.com[/url]
Referer        [url=http://t.dianping.com/register]http://t.dianping.com/register[/url]
User-Agent        Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)

可以收到如下输出
[HTML] 纯文本查看 复制代码
HTTP/1.1 200 OK
Date: Wed, 14 Jan 2015 05:18:13 GMT
Content-Type: application/json;charset=UTF-8
Content-Length: 97
Connection: keep-alive
Keep-Alive: timeout=5
Content-Language: zh-CN
Pragma: no-cache
Cache-Control: no-cache
Server: DPweb
DP._JSONPRequest._9({"code":100,"msg":{"err":"1鍒嗛挓鍐呭彧鑳借幏鍙?娆★紝璇风◢鍚庡啀璇曪紒"}})


却无法得到执行代码,这是为什么呢


1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
 楼主| 发表于 2015-1-14 14:09:26 | 显示全部楼层
我的cookie是通过http://t.dianping.com/register页面获得的,我看了一下我的cookie和您写的cookie不太一样,您这个cookie是怎么获得的,问了很多问题,真是麻烦您了
发表于 2015-1-14 13:34:13 | 显示全部楼层
DP._JSONPRequest._5({"code":100,"msg":{"err":"该手机号已经被绑定,你可以直接登录!"}})
 楼主| 发表于 2015-1-14 13:34:57 | 显示全部楼层
站长苏飞 发表于 2015-1-14 13:34
DP._JSONPRequest._5({"code":100,"msg":{"err":"该手机号已经被绑定,你可以直接登录!"}})

为什么我执行就不对呢
 楼主| 发表于 2015-1-14 13:36:45 | 显示全部楼层
一着急忘记贴代码了
[C#] 纯文本查看 复制代码
 HttpHelper http = new HttpHelper();
            HttpItem item = new HttpItem()
            {
                URL = url,//URL     必需项    
                Accept=@"*/*",
                Method = "get",//URL     可选项 默认为Get   
                IsToLower = false,//得到的HTML代码是否转成小写     可选项默认转小写   
                Cookie = cookie,//字符串Cookie     可选项   
                Referer = @"http://t.dianping.com/register",//来源URL     可选项   
                Postdata = "",//Post数据     可选项GET时不需要写   
                Timeout = 100000,//连接超时时间     可选项默认为100000    
                ReadWriteTimeout = 30000,//写入Post数据超时时间     可选项默认为30000   
                UserAgent = @"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2)",//用户的浏览器类型,版本,操作系统     可选项有默认值   
                ContentType = @"application/json;charset=UTF-8",//返回类型    可选项有默认值   
                Allowautoredirect = false,//是否根据301跳转     可选项   
                //CerPath = "d:\123.cer",//证书绝对路径     可选项不需要证书时可以不写这个参数   
                //Connectionlimit = 1024,//最大连接数     可选项 默认为1024    
                ProxyIp = "",//代理服务器ID     可选项 不需要代理 时可以不设置这三个参数    
                //ProxyPwd = "123456",//代理服务器密码     可选项    
                //ProxyUserName = "administrator",//代理服务器账户名     可选项   
                ResultType = ResultType.String
            };
            HttpResult result = http.GetHtml(item);
            item.Header.Add("x-requested-with", "XMLHttpRequest");
            cookie = result.Cookie;
            return result.Html;

 楼主| 发表于 2015-1-14 13:44:17 | 显示全部楼层
站长苏飞 发表于 2015-1-14 13:34
DP._JSONPRequest._5({"code":100,"msg":{"err":"该手机号已经被绑定,你可以直接登录!"}})

苏飞站长,刚才没有贴代码,能帮我看下吗?代码执行出来,不是这个结果
 楼主| 发表于 2015-1-14 13:45:16 | 显示全部楼层
站长苏飞 发表于 2015-1-14 13:34
DP._JSONPRequest._5({"code":100,"msg":{"err":"该手机号已经被绑定,你可以直接登录!"}})

苏飞站长,刚才没有贴代码,能帮我看下吗?代码执行出来,不是这个结果
发表于 2015-1-14 13:45:38 | 显示全部楼层
那里写有执行Js啊,我没有看到
 楼主| 发表于 2015-1-14 13:48:34 | 显示全部楼层
站长苏飞 发表于 2015-1-14 13:45
那里写有执行Js啊,我没有看到

url是固定写死的
[C#] 纯文本查看 复制代码
string.Format(@"http://www.dianping.com/ajax/json/account/reg/mobile/send?m={0}&flow=t&callback=DP._JSONPRequest._5", phoneNum);

发表于 2015-1-14 13:50:48 | 显示全部楼层
那上面提示的是你的手机号已经绑定了,说明程序是执行成功 的吧。


你说的无法执行代码是什么情况?
 楼主| 发表于 2015-1-14 13:54:13 | 显示全部楼层
站长苏飞 发表于 2015-1-14 13:50
那上面提示的是你的手机号已经绑定了,说明程序是执行成功 的吧。

我用程序执行时候是不成功的,但是把这个代码粘贴到论坛,在论坛点进去就可以执行成功
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-15 01:19

© 2014-2021

快速回复 返回顶部 返回列表