无法下载XML文件

时间:2017-04-20 13:21:42

标签: xml curl download wget cron-task

我试图从远程URL下载XML文件但没有成功。我可以在网络浏览器中看到它的内容,但无法通过命令行下载(我可以手动下载,只需从网络浏览器下载)。我正在使用wget:

wget -q -O test.xml https://example.com/test

我也试过使用cURL但没有成功。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

删除-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打破了它。

答案 1 :(得分:0)

尝试设置标题

wget -q -O --header="Accept:text/xml,*/*"  test.xml https://example.com/test