2007年6月7日 星期四

抓圖的技術(Grab Picture)

由於網路的盛行,無論是blog還是現在流行的YouTube,在網路上都有許多的檔案或圖片在以各種方式在分享

經常會看見各大網站會有許多美麗的圖片,很多人都有收集美圖的習慣,但是經常會發現沒有辦法把圖抓下來,在這裡先略過著作權的爭議,而只是討論技術的部份,所以接下來的討論都是針對圖片本身沒有版權問題,可別亂以身試法!

要說怎麼抓圖就要先提到有那些常見的防範技術,用在保護圖片上

1. 鎖右鍵:因為絕大部份的人都是用右鍵來另存圖片
2. 利用資料庫:無法直接抓取的到資料庫的路徑,所以抓圖會有困難
3. 改變副檔名:令人無法直接搜尋出該圖檔的正確位置
4. 加上浮水印:這應該算是一種玉石俱焚的方法,但是保有原圖的人可用

以筆者的經驗來說,除了浮水印之外,其它圖片保護都有對應的方式抓取,不過也可分為全靠軟體,或是軟體與技術各半,甚至有些方式連軟體都不用,就可以輕鬆破解(其實只要是會用保護的人一定也會解...)

全靠軟體的部份,應該也不用筆者多說,想想最早無名相簿大紅大紫的同時,因為該網頁就有鎖右鍵+利用資料庫的方式來保護圖片,所以就有許多打著可以抓取無名相簿的軟體出現(例:抓圖王...等軟體,去Google上找就有一堆,所以我不再贅述)

這一類抓圖軟體,其實絕大部份都是用類似暴力法去try出真實路徑,一但有人試出來了,這個網站的資料庫結構就等於被破解了!只差時間的長短而已,而且這一類的軟體使用方便,應該很多人都有試過吧!

那軟體與技術各半的呢?

其實說穿了這一點也很簡單,應該很多人的電腦裡都有類似Flashget的續傳軟體吧!筆者就曾經試過用這一類的軟體能夠抓到原圖,因為就算鎖了右鍵,注意一下你們用的瀏覽器(IE、FIREFOX...等)都有一行狀態列

通常都在最下方,一但你把游標指向該圖片,就會顯示出該圖的路徑,接下來就只要把該路徑輸入到續傳軟體,就可以直接抓取到該圖片了,甚至還可以利用續傳軟體的批次下載,猜測可能的相片編號方式一網打盡,所以真是防不慎防

再來,破解鎖右鍵的方式其實有很多:

1. 更換瀏覽器:因為很多鎖右鍵的語法,只在IE生效,換FIREFOX就迎刃而解
2. 技術欺騙:先按住右鍵不放,當它跳出不可以按右鍵的畫面出現後,先用左鍵確定(右鍵不放開),等禁止右鍵的視窗消失後,再放開右鍵,如此一來就可以出現原有另存圖片的選項,這也是一種欺騙瀏覽器的方法喔!
3. 更改設定:直接把IE能夠執行許多程式語法給停用
工具-->網際網路選項-->安全性,工具-->管理附加元件

以上是常見破解鎖右鍵的方法,提供大家參考,再次聲明別拿來做壞事喔!

更改副檔名又是怎麼一回事呢?

其實筆者最早是在國外的某些網站上看見的,其實當看見一個網頁,也可以利用最笨的方式來找尋該網頁圖檔的真實路徑(利用資料庫或CSS語法者無效),那就是直接檢視該網頁的原始碼,只要稍稍搜尋一下*.JPG、*.GIF或*.PNG應該就能找到不少

不過這個方法,我卻在該網站失效了,我苦思右想,只好用土法鍊鋼的方式,大家應該知道所有從瀏覽器讀入的網頁,都會有一份TEMP檔在本機的電腦裡吧!

所以筆者就直接把網頁的暫存檔全部清除(包括離線瀏覽的內容),然後直接開啟該網頁,等全部內容都顯示出來後,去暫存檔的資料夾(預設在C:\Documents and Settings\"USERNAME"\Local Settings\Temporary Internet Files)中比對資料

其實一樣就能發現出有很多副檔名不詳,但是檔案卻比其它檔案來得大出許多的檔案(因為網頁上資料量最大的應該就是圖檔或其他多媒體檔案),不過這一類的檔案名稱,經常是一連串的英數混合而成

只要稍稍把那些副檔名不明的檔案改成圖型的副檔名(*.JPG...等),再利用看圖軟體點開,就會發現另外一片新世界,我原先也很不可置信,竟然還有這種方法,不過後來仔細想想,只要在網頁伺服器的設定上動點手腳,應該要做到類似的成果應該也不難(恕筆者沒時間實作,唉...)

以上就是在網頁上抓取圖片的方法,僅供參考,如有疑問再一起討論吧!

其實...如果不在乎是否要較高畫質的原圖,還有一個最簡單的方法,那就是利用「Print Screen」的功能鍵,來做畫面上的快照,一樣也能夠把圖抓下來,只是礙於螢幕顯示的解析度,頂多就是72dpi的圖片吧!