(轉)破解使用做了防盜的圖片

 

破解使用做了防盜的圖片

還在爲不能在網頁中引用那些做了防盜鏈的圖片發愁嗎?
下面讓我們使用一個簡單的方法就能搞定。
首先我們都明白,所謂防盜的原理也就是判斷圖片引用來源。所以,只要我們在這上面做文章就行了
實現思路,使用<Iframe>標籤替代<IMG>標籤,<Iframe>的src指向空白頁“about:blank”,然後用腳本創建一個IMG對象,IMG對象的src屬性指向原始圖片路徑,最後把IMG追加到<Iframe>的document內,並隱藏原始圖片既可,這樣服務器再取到的圖片引用路就是空,也就可以顯示圖片了
我把代碼做成了htc文件(htc只支持IE,其它瀏覽器各位可按此思路處理)
把下面代碼Copy到RemotingImage.htc內:
<script language="javascript">
if(element.src.toLowerCase().indexOf("sina.com.cn"> -1)
{
    
var link = null;
    
if (element.parentElement.tagName.toUpperCase() == "A")
    
{
        link 
= element.parentElement.href;
    }

    
var id = "x_" + Math.random().toString().replace(".""");
    
var src = element.src + "?txyule.cn";
    element.outerHTML 
= "<iframe src='about:blank' name='"+ id +"' style='width:1px;height:1px'></iframe>"
    
var doc = window[id].document;
    
var img = doc.createElement("IMG");
    img.src 
= src;
    img.parentWindow 
= id;
    img.onload 
= function()
    
{
        
//window.status = (this.src + "[" + this.width + ":" + this.height + "]");
        var win = window.document.getElementById(this.parentWindow);
        win.style.width 
= this.width;
        win.style.height 
= this.height;
    }

    
if (link == null)
    
{
        doc.appendChild(img);
    }

    
else
    
{
        img.border 
= 0;
        
var a = doc.createElement("A");
        a.href 
= link;
        a.target 
= "_blank";
        a.appendChild(img);
        doc.appendChild(a);
    }

}

</script>

在HTML頁面內爲IMG定義樣式時加上:img{behavior:url(/RemotingImage.htc)}
這相示例是我處理新浪圖片時做的
哈,搞定,就是這麼簡單。。。
來看看我的網站效果吧 http://www.txyule.cn/ 內容都抓自新浪博客,裏面的圖片也都是引用新浪的圖片
怎麼樣,效果不錯吧
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章