精易论坛
标题: 网页 GET 的一个问题 [打印本页]
作者: 付笑 时间: 2014-9-26 12:45
标题: 网页 GET 的一个问题
本帖最后由 付笑 于 2014-9-26 13:09 编辑
我要GET 一个地址 :
代码如下:
反回数据 = 到文本 (网页_访问_对象 (url, , , , , , , , , , , 9, , , ))
这个地址 需要VPN 才可以 访问, 现在我开了VPN ,有下面的问题
1. 在WIN7系统上,可以取到返回数据,在XP系统上取不到数据,代码是一样的,请问怎么才能在XP上也可以取到数据啊;
为什么会出现这样的情况呢
还有就是在XP上如果是用360浏览器的话,开了VPN可以访问这个地址,但是用IE就访问不了这个地址,不知道这是为什么了
作者: aa361611002 时间: 2014-9-26 12:45
把9秒改了,, ..试下xp 能直接访问这个网站不,,如果可以,,你试试其他的访问代码,,
作者: 付笑 时间: 2014-9-26 13:04
我试了下,也不行的,不同的命令都试了啊,还有就是在XP上如果是用360浏览器的话,开了VPN可以访问这个地址,但是用IE就访问不了这个地址,不知道这是为什么了,
作者: qq919740 时间: 2014-9-26 13:18
不会.太难了啊..
作者: 付笑 时间: 2014-9-26 14:02
谁知道是怎么回事啊
作者: 执着 时间: 2014-9-26 17:14
360浏览器可以访问 你就伪造UA 试试
作者: 付笑 时间: 2014-9-26 17:55
是不是仿造User-Agent 这个啊
这个我试了,也不行啊,好晕
作者: 付笑 时间: 2014-9-26 17:59
是不是抓的包不对啊,我用360上用的是360内置的工具抓的包,然后把协议头都加上也不行啊, 头在下面
Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip,deflate,sdch
Accept-Language:zh-CN,zh;q=0.8
Connection:keep-alive
Cookie:PHPSESSID=hnjpnjiptjc734ertuc68jr3j2; optimizelyEndUserId=oeu1411699269359r0.9282845339039587; __qca=P0-403315885-1411699295218; SECONDARY=1; optimizelySegments=%7B%7D; optimizelyBuckets=%7B%7D; __utma=260410783.171034328.1411699272.1411706972.1411725559.4; __utmb=260410783.3.10.1411725559; __utmc=260410783; __utmz=260410783.1411699272.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); COUNTRY_GROUP=5; uDirTab=all
Host:profiles.camfrog.com
Referer:https://profiles.camfrog.com/zh-s/?tab=all
User-Agent:Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36
X-Requested-With:XMLHttpRequest
作者: 付笑 时间: 2014-9-26 18:04
我这样写也不行啊
变量名 | 类 型 | 静态 | 数组 | 备 注 |
url | 文本型 | | |
反回数据 | 文本型 | | |
协议头 | 文本型 | | |
返回数据 | 文本型 | | |
返回文本 | 文本型 | | |
临时字节集 | 字节集 | | |
winhttp对象 | 对象 | | |
url =
“https://profiles.camfrog.com/zh- ... =Search&tab=all” winhttp对象.
创建 (“WinHttp.WinHttpRequest.5.1”,
)winhttp对象.
方法 (“SetTimeouts”, 15000, 15000, 15000, 15000
)winhttp对象.
方法 (“Open”,
“GET”, url,
) winhttp对象.
方法 (“SetRequestHeader”,
“Accept”,
“application/json, text/javascript, */*; q=0.01”)winhttp对象.
方法 (“SetRequestHeader”,
“Accept-Encoding”,
“gzip,deflate,sdch”)winhttp对象.
方法 (“SetRequestHeader”,
“Accept-Language”,
“zh-CN,zh;q=0.8”)winhttp对象.
方法 (“SetRequestHeader”,
“Accept-Language”,
“keep-alive”)winhttp对象.
方法 (“SetRequestHeader”,
“User-Agent”,
“Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36”)winhttp对象.
方法 (“SetRequestHeader”,
“X-Requested-With”,
“XMLHttpRequest”)winhttp对象.
方法 (“Send”,
)临时字节集 = winhttp对象.
读属性 (“ResponseBody”,
).
取字节集 ()返回文本 =
到文本 (临时字节集
)调试输出 (返回文本
)
作者: 付笑 时间: 2014-9-26 18:12
用最新的360手动可也访问,get就是不行
作者: 付笑 时间: 2014-9-26 18:27
还有个问题就是同样的代码为什么XP上采集不到数据,在win7上就可以呢
作者: 学徒工 时间: 2014-11-30 23:09
有的网页在360里是极速模式和兼容模式就不一样呀
作者: Hwak 时间: 2014-12-1 05:48
忽略错误呢
作者: 风一样自由 时间: 2016-10-29 19:11
过来学习下喽
作者: fuhanw 时间: 2016-10-31 02:27
https要带证书
作者: liuwentao3079 时间: 2016-11-22 17:32
注意GET 是否大写,你应该用的是winhttp5.1那个,有些系统版本会区分大小写
作者: liuwentao3079 时间: 2016-11-22 17:43
.版本 2
.支持库 spec
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
.局部变量 url, 文本型
.局部变量 反回数据, 文本型
.局部变量 协yi头, 文本型
.局部变量 返回数据, 文本型
.局部变量 返回文本, 文本型
.局部变量 临时字节集, 字节集
.局部变量 winhttp对象, 对象
url = “https://profiles.camfrog.com/zh-s/get_list.php?p=2&orderby=&st=web&ads=1&sou=1&r=&cg=2&S=Search&tab=all”
' winhttp.SetTimeOut (15000)
winhttp对象.创建 (“WinHttp.WinHttpRequest.5.1”, )
winhttp对象.方法 (“SetTimeouts”, 15000, 15000, 15000, 15000)
winhttp对象.方法 (“Open”, “GET”, url, )
' winhttp对象.方法 (“SetRequestHeader”, “Cookie”, cookies)
winhttp对象.方法 (“SetRequestHeader”, “Accept”, “application/json, text/javascript, */*; q=0.01”)
' winhttp对象.方法 (“SetRequestHeader”, “Accept-Encoding”, “gzip,deflate,sdch”)
winhttp对象.方法 (“SetRequestHeader”, “Accept-Language”, “zh-CN,zh;q=0.8”)
winhttp对象.方法 (“SetRequestHeader”, “Accept-Language”, “keep-alive”)
winhttp对象.方法 (“SetRequestHeader”, “User-Agent”, “Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36”)
winhttp对象.方法 (“SetRequestHeader”, “X-Requested-With”, “XMLHttpRequest”)
winhttp对象.方法 (“Send”, )
临时字节集 = winhttp对象.读属性 (“ResponseBody”, ).取字节集 ()
返回文本 = 到文本 (临时字节集)
调试输出 (返回文本)
作者: liuwentao3079 时间: 2016-11-22 17:45
错误原因:winhttp对象.方法 (“SetRequestHeader”, “Accept-Encoding”, “gzip,deflate,sdch”),你告诉服务器说你可以支持 压缩文件,但是人家给你返回压缩的文件 你又不解压,所以屏蔽掉这一行就可以了,给我加精,谢谢
作者: 付笑 时间: 2016-11-23 14:21
一样不行的,返回的就是空字节集,想解压也解压不了啊
作者: 付笑 时间: 2016-11-23 14:22
这个证书怎么带上呢,代码是什么样啊
作者: liuwentao3079 时间: 2016-11-23 15:27
我给你的代码 你用了吗?
...... 跑下代码在说
作者: 付笑 时间: 2016-11-27 17:14
用了,在XP上不可以,win7上可以
作者: 鹏书 时间: 2016-12-1 22:11
应该是你的电脑缺少对象,所以不行
作者: 伍玖伍拾丶无言 时间: 2017-2-18 02:24
你get之后看下字节集长度或者抓包看下有没有数据返回还是提交失败。如果有字节集返回可能是编码问题
作者: hezan0124 时间: 2017-3-7 23:27
俺是新人 菜鸟 暂时好像用不到 但是 先顶啦
欢迎光临 精易论坛 (https://125.confly.eu.org/) |
Powered by Discuz! X3.4 |