如何使用Telnet获取网页xml内容

时间:2013-07-28 07:39:27

标签: http web telnet

如何使用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.&nbsp; Please move along.</p>
    <p id="http">403 Forbidden</p>
  </body>
</html>
Connection closed by foreign host.

这是否意味着我不被允许检索内容或我做错了什么?

2 个答案:

答案 0 :(得分:2)

  1. 将“HTTP / 1.1”添加到请求行

  2. 修复查询中的拼写错误

  3. 添加主机标题字段(“host:www.musicbrainz.org”)

  4. (有关示例消息,请参阅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