ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: liucqa

[分享] 【感谢加精】网页采集教程第五课-如何伪造Cookie及处理Referer防盗链

  [复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-12-16 22:29 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
messias 发表于 2013-12-16 21:01
问个问题,希望搂主给予解答,万分感谢!
COOKIE = Split(.getResponseHeader("Set-Cookie"), ";")(0)        ...

先用winhttp登录,就能获取cookie

如果你不会登录,就用ie+xmlhttp,但会丧失一些防盗链的功能

TA的精华主题

TA的得分主题

发表于 2013-12-16 23:23 | 显示全部楼层
奇怪,通知搂主回复了我,怎么没有呢? QQ截图20131216232256.jpg

点评

楼上  发表于 2013-12-16 23:34

TA的精华主题

TA的得分主题

发表于 2013-12-16 23:42 | 显示全部楼层
本帖最后由 messias 于 2013-12-16 23:53 编辑
liucqa 发表于 2013-12-16 22:29
先用winhttp登录,就能获取cookie

如果你不会登录,就用ie+xmlhttp,但会丧失一些防盗链的功能

感谢楼主的回复。。。。

我要去的网站有referer认证。。。。登陆再到指定网页,那些个参数,真心麻烦。。。
再一个,登录拿到了cookie,一旦循环开始调用,不就又是用的返回set-cookie?照cookie的原理来说,返回的set-cookie应该是去改写原浏览器的cookie的。如果每次调用set-cookie,登陆过后的cookie也留不住呀。而且,这个网站的主cookie,不但有sid、还有auth值。

我把浏览器cookie都清除,从第一步开始试试看吧,如有问题再来咨询,再次感谢楼主。



TA的精华主题

TA的得分主题

发表于 2013-12-17 16:25 | 显示全部楼层
本帖最后由 messias 于 2013-12-17 16:27 编辑

xml.http,也确认bug,request的时候传递的cookie是空。。。。。坛子里也有一位(帖子懒得找了)说了这个bug问题。
QQ截图20131217162214.jpg
这里也说了,可以尝试设置两次的做法,但好像也没作用。

TA的精华主题

TA的得分主题

发表于 2013-12-19 15:07 | 显示全部楼层
请教一下版主,Set-Cookie:Jsessionid=...... 后面带HttpOnly属性,能否得到此Jsessionid啊?

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-12-19 23:47 | 显示全部楼层
本帖最后由 liucqa 于 2013-12-19 23:59 编辑
jyhxr 发表于 2013-12-19 15:07
请教一下版主,Set-Cookie:Jsessionid=...... 后面带HttpOnly属性,能否得到此Jsessionid啊?

Now, we can inject into every request, including AJAX requests. How to get/set the HTTP-Only cookies when a request is being sent? There is a new added flag INTERNET_COOKIE_HTTPONLY in IE8 SDK for InternetGetCookieEx / InternetSetCookieEx.

  如果系统浏览器是IE8以上的版本可以使用这两个API来获取和设置HttpOnly的Cookies。

http://www.codeproject.com/Articles/38616/Retrieve-HttpOnly-Session-Cookie-in-WebBrowser


其实吧,我觉得还是换C#好

TA的精华主题

TA的得分主题

发表于 2013-12-23 14:06 | 显示全部楼层
liucqa 发表于 2013-12-19 23:47
Now, we can inject into every request, including AJAX requests. How to get/set the HTTP-Only cooki ...

噢,谢谢指点,只是URL后面跟端口号的就无法取了,是否服务器上做了安全控制啊?

TA的精华主题

TA的得分主题

发表于 2013-12-24 09:58 | 显示全部楼层
楼主好!
之前cookie和referer的问题已经解决,现在又卡在gzip的问题上了。
winhttp,响应文件乱码,查看响应头文件:

(Status-Line)        HTTP/1.1 200 OK
Connection        close
Content-Encoding        gzip
Content-Type        text/html; charset=gbk
Date        Tue, 24 Dec 2013 01:54:22 GMT
Server        nginx
Transfer-Encoding        chunked
X-Powered-By        PHP/5.3.16

也是做了gzip压缩的
查了一些资料,说去掉   setRequestHeader "Accept-Encoding","gzip, deflate"   这一句,但一旦去掉,运行代码出现死机现象。

现在已经走了99步,就差最后一步了,望楼主解惑。坐等。。。。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-12-24 11:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
messias 发表于 2013-12-24 09:58
楼主好!
之前cookie和referer的问题已经解决,现在又卡在gzip的问题上了。
winhttp,响应文件乱码,查看响 ...

如果服务器返回的是gzip的话,你得自己写程序解码,具体百度就行

TA的精华主题

TA的得分主题

发表于 2013-12-24 14:01 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
liucqa 发表于 2013-12-24 11:41
如果服务器返回的是gzip的话,你得自己写程序解码,具体百度就行

关键我不知道出现乱码是否就是gzip的原因,用xmlhttp就没有乱码。。。。

你看我发来的响应头文件,能判断是gzip的问题吗?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 02:33 , Processed in 0.033916 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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