如何使用javascript来获取QQ空间最近访客好友。

在看此文之前,请看:疯人院:如何在当前网页里执行你想要的执行的代码 第一步、先找出获取QQ访客接口:通过浏览器抓包:我们可以获取到这个接口https://user.qzone.qq.com/proxy/domain/g.qzone.q...

在看此文之前,请看:

疯人院:如何在当前网页里执行你想要的执行的代码


第一步、先找出获取QQ访客接口:

通过浏览器抓包:

如何使用谷歌浏览器抓包:http://www.hellojava.com/article/250

1510109704313917.png

我们可以获取到这个接口

https://user.qzone.qq.com/proxy/domain/g.qzone.qq.com/cgi-bin/friendshow/cgi_get_visitor_simple?uin=QQ号&mask=2&mod=2&fupdate=1&g_tk=121307362&qzonetoken=694e991fd4ee1f360edf1c18c63b2bd6fbb61be931b1a34b3c5b8ac5d27c372537f12f625db554f3&g_tk=121307362

其中关键参数有 uin , g_tk ,  qzonetoken 


第二步、查找上面三个参数值的来源

uin: 可以在cookie 里获取。

1510110448422108.png

g_tk: QZONE.FP.getACSRFToken()

1510110433792130.png

qzonetoken: 在网页的源码里。

window.g_qzonetoken = (function(){ try{return "694e991fd4ee1f360edf1c18c63b2bd6fbb61be931b1a34b3c5b8ac5d27c372537f12";} catch(e) {var xhr = new XMLHttpRequest();xhr.withCredentials = true;xhr.open('post', '//h5.qzone.qq.com/log/post/error/qzonetoken', true);xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');xhr.send(e);}})();

里有这么一段。 我们只需要使用 window.g_qzonetoken 就可以获取

1510110310816542.png


第四步、让我们愉快的编写程序吧。

首先我们尽量在控制台里先写代码

1510110865107032.png

最后组织成javascript:

var uinArray = /uin=o0*(\S+);/.exec(document.cookie || ''); 
var uin = uinArray[1];
var g_tk = QZONE.FP.getACSRFToken();
var qzone_token = window.g_qzonetoken;
var url = 'https://user.qzone.qq.com/proxy/domain/g.qzone.qq.com/cgi-bin/friendshow/cgi_get_visitor_simple?uin='+uin+'&mask=2&mod=2&fupdate=1&g_tk='+g_tk+'&qzonetoken='+qzone_token;

url就是可以获取数据的URL。


最终代码:

包含里回调方法和数据

function _Callback(json){
	var items =  json.data.items;
	var nicks = '';
	for(var i=0;i<items.length;i++){
		var item = items[i];
		nicks+=item.name+'\n';
	}
	console.log(nicks);
}
var uinArray = /uin=o0*(\S+);/.exec(document.cookie || ''); 
var uin = uinArray[1];
var g_tk = QZONE.FP.getACSRFToken();
var qzone_token = window.g_qzonetoken;
var url = 'https://user.qzone.qq.com/proxy/domain/g.qzone.qq.com/cgi-bin/friendshow/cgi_get_visitor_simple?uin='+uin+'&mask=2&mod=2&fupdate=1&g_tk='+g_tk+'&qzonetoken='+qzone_token;
var head= document.getElementsByTagName('head')[0]; 
var script= document.createElement('script'); 
script.type= 'text/javascript'; 
script.src= url; 
head.appendChild(script);


输出结果:

1510118968250979.png


本文原创,不得转载。


1 个评论
好厉害的样子,呆会我也拿去我的空间试试。

要回复文章请先登录注册