<-Back

用JS破解QQ空间图片防盗链

几个月前的某个周末闲来无聊,写了一个爬虫抓取QQ空间的日志,火力全开的时候,每天能抓到1w来篇日志,为了不浪费这些数据,就写了一个新的网站:qqrz.us(改版后得域名是haorz123.com)把日志列出来。我没有下载日志中的图片,所以只能用外链显示图片,但是QQ空间做了防盗链,直接用img标签显示出的图片是这样:QQ空间防盗链

怎么破?

答案是:用iframe来加载图片。即在所有外链的img标签外套一层ifame标签。代码如下:

[code lang=”js”]

/*

*

  • author:TY

  • date:2013-08-08

*

* */

$(document).ready(function(){

// show image

function showImg(url) {

var frameid = ‘frameimg’ + Math.random();

window.img = ‘

window.onload = function() { parent.document.getElementById(\”+frameid+’\’).height = document.getElementById(\’img\’).height+\’px\’; }<‘+’/script>’;

var new_img = ‘<iframe id="’+frameid+’" src="javascript:parent.img;" frameBorder="0" scrolling="no" width="100%"></iframe>’;

// document.write(new_img);

return new_img;

}

$(‘div.entry img’).each(function(i,d){

var html = showImg(this.src);

$(this).attr({‘src’:’/static/images/loading.gif’}); //显示loading动画

$(this).after(html);

$(this).remove(); // 移除原来的img标签

});

});

</script>

[/code]

“多说”已关闭,原评论数据丢失