-1
我試圖從遠程URL下載XML文件而沒有成功。我可以在網絡瀏覽器中看到它的內容,但無法通過命令行下載(我可以從網絡瀏覽器手動下載)。我正在使用wget:無法下載XML文件
wget -q -O test.xml https://example.com/test
我試過也用cURL沒有成功。
有什麼想法?
我試圖從遠程URL下載XML文件而沒有成功。我可以在網絡瀏覽器中看到它的內容,但無法通過命令行下載(我可以從網絡瀏覽器手動下載)。我正在使用wget:無法下載XML文件
wget -q -O test.xml https://example.com/test
我試過也用cURL沒有成功。
有什麼想法?
刪除-q
,你會看到:
--2017-04-20 14:25:53-- https://example.com/test Resolving example.com... 93.184.216.34, 2606:2800:220:1:248:1893:25c8:1946 Connecting to example.com|93.184.216.34|:443... connected. HTTP request sent, awaiting response... 404 Not Found 2017-04-20 14:25:53 ERROR 404: Not Found.
的URL是一個404錯誤頁面。因此text.xml
爲空。
然後,如果你看一下說明書:
--content-on-error If this is set to on, wget will not skip the content when the server responds with a http status code that indicates error.
所以:
wget -q --content-on-error -O test.xml https://example.com/test
...成功下載該資源。
儘管這不是有效的XML。 HTML 5 Doctype將其分解。
嘗試設置一個頭
wget -q -O --header="Accept:text/xml,*/*" test.xml https://example.com/test
我越來越: 「失敗:連接超時重試」。非常奇怪 – Blackcoat77
@ Blackcoat77 - 這表明它是你和example.com之間的網絡問題。如果它在瀏覽器中工作:可能與代理服務器配置有關。 – Quentin
如果我輸入wget -d https://example.com/test來查看默認的HTTP請求頭,我會得到:「已加載的證書:174」。如果我用google替換上面提到的URL,我會得到正確的HTTP請求頭。 – Blackcoat77