2012-01-15 87 views
17

我正嘗試使用Wget下載此頁面。這裏是頁面鏈接:如何使用用戶代理使用Wget下載網頁

http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&rt=nc&item=250972882769&si=a8iGAIchyvEbn7KveYFZ5QbEE7o%3D&print=all&category=31387

,這裏是我的CMD:

的wget -O ebay.html --user劑=「Mozilla的/ 5.0(Windows NT的5.2; RV:2.0.1)的Gecko/20100101火狐/ 4.0.1" 「http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&rt=nc&item=250972882769&si=a8iGAIchyvEbn7KveYFZ5QbEE7o%3D&print=all&category=31387

當我使用它用它工作正常瀏覽器訪問該頁面。當我使用Wget時,它會下載另一個頁面,而不是原始頁面。我認爲這個問題是針對用戶代理的。什麼是解決方案?

+0

嘗試使用Fiddler並在瀏覽器中打開URL時查看http請求的結構。只是模仿你的wget命令的結構。 – 2012-01-15 18:13:14

+0

你會舉一個簡單的例子嗎? – qmaruf 2012-01-15 18:52:08

回答

13

問題不在於用戶代理,而是缺少的cookie或cookie。解決的辦法是

  1. 獲取與wget的--save餅乾=易趣餅乾正常的產品頁面,
  2. 魚「打印」鏈接URL的是HTML文件。 (我的手這樣做,很顯然你應該編寫一個腳本來做到這一點。)
  3. 檢索「打印」 URL與wget的--load餅乾=易趣餅乾

我用隨機試了一下產品頁面;有效。

+0

你是怎麼知道eBay-cookies是啓用這個詞的,如果我和其他網站一起做如何找出啓用哪個cookie – 2013-11-08 05:20:15

+2

ebay-cookies只是我選擇存儲cookie的文件的名稱用你喜歡的任何名字。最重要的部分是使用--save-cookies保存站點cookie和--load-cookies加載併發送回網站。 – 2013-11-08 05:24:29