如何使用telnet从以下网站获取xml内容:
http://www.musicbrainz.org/ws/2/artist/?query=artist:fred
这就是我的尝试:
telnet www.musicbrainz.org 80
GET /ws/2/artist/?query=artist:fred
这就是我得到的:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-GB" lang="en-GB">
<head>
<title>403 Forbidden</title>
<link rel="stylesheet" href="/.proxy/httperror.css" type="text/css" />
</head>
<body>
<div id="bg">
<img src="/.proxy/MusicBrainzLogo-stop.png" />
</div>
<h1>Forbidden</h1>
<p>Nothing for you to see here. Please move along.</p>
<p id="http">403 Forbidden</p>
</body>
</html>
Connection closed by foreign host.
这是否意味着我不被允许检索内容或我做错了什么?
答案 0 :(得分:2)
将“HTTP / 1.1”添加到请求行
修复查询中的拼写错误
添加主机标题字段(“host:www.musicbrainz.org”)
(有关示例消息,请参阅https://greenbytes.de/tech/webdav/rfc7230.html#operation)
答案 1 :(得分:2)
您可以使用wget:
,而不是将telnet与“查询”一起使用wget --output-document=fred.xml http://www.musicbrainz.org/ws/2/artist/?query=artist:fred