2011-12-17 89 views
-2

我在尋找一些幫助從網站下載圖片。這是問題的細節。需要一些幫助,從網站上下載圖片

URL被basvandenbroek點com, 假設,當我們訪問以下網頁http://www.basvandenbroek.com/nl/product/27341/704/snaarinstrumenten/boston/snarenset_elektrisch.html

我們有一個縮略圖PIC這裏,當點擊它帶來更大的版本。我想用一個php腳本捕捉較大的圖像並將其下載到我的電腦上。

問題是,當我們檢查,我們看到了基於上面的代碼圖像

../../../../../../../jpg/27000/27341.jpg 
../../../../../../../jpg/cache/27000/220_220_27341.jpg 

下面的代碼,我認爲,如果我在的 jpg/27000/27341.jpg開始追加的網站地址,我可以訪問PIC的HTML但它沒有這樣工作。

我相信URL是隱藏的,或者我可能無法正確理解。我是PHP和Scripting的新手,我希望有人能幫助我解決這個問題。

謝謝

回答

0

相對URL是相對於包含文檔的URL。所以如果你正在抓取的文件位於http://example.com/foo/bar/baz/doc.html,並且圖像被引用爲 ../../omg/wtf/lol/cat.jpeg,則其完整網址爲http://example.com/foo/bar/baz/../../omg/wtf/lol/cat.jpeghttp://example.com/foo/omg/wtf/lol/cat.jpeg

順便說一句,這與PHP或一般的腳本無關,而是堅定的HTTP事物。並且HTTP中沒有「隱藏的」URL,這將是一個矛盾。

編輯:您的評論看起來像問題是在您的請求中發送(或不發送)Referer標頭或會話標識。

+0

謝謝你的答案。本網站列出了大約16000種產品。我完全理解,如果我使用http://www.basvandenbroek.com/jpg/27000/27341.jpg我可以訪問我在原始文章中列出的產品的圖像。現在,問題是像27341.jpg有另一個產品圖片27342.jpg存在與另一種產品相關聯。如果我嘗試通過更改網址(如http://www.basvandenbroek.com/jpg/27000/27342.jpg)來訪問它,它會返回一個錯誤頁面,其中產品圖片位於服務器上。 –

0

你提到的網站,如果縮略圖是

http://www.basvandenbroek.com/jpg/cache/27000/220_220_27341.jpg 

那麼

http://www.basvandenbroek.com/jpg/27000/27341.jpg 

所以縮略圖基本上是(220 X 220)作爲前綴添加到原來的尺寸另一個文件夾。另外,沒有什麼像隱藏的URL。任何在網頁上有效的鏈接肯定會出現在html的源代碼中。在Chrome和Firefox中,您可以通過右鍵單擊該鏈接並複製鏈接地址來找到該鏈接。

對於您的情況,您可以通過右鍵單擊縮略圖和原始網址來找到縮略圖的網址。

但是,如果您想使用PHP自動執行此操作,則必須編寫能夠解析頁面的html以確定URL的代碼。