<p>您正在Windows中使用<code>cmd</code>?在这种情况下,让Unicode正常工作以正确显示可能有点麻烦。
您可能需要考虑使用另一个“终端”来测试脚本。
<a href="http://www.mingw.org/" rel="nofollow noreferrer">MSYS</a>提供了一个不错的终端/shell,IDLE包含在Windows Python发行版中,并且有一个pythonshell(右键单击,在IDLE中打开,F5)。在</p>
<p>如果您真的想让它在<code>cmd</code>中工作:</p>
<p>您必须将<code>Lucida Console</code>设置为<code>cmd</code>中的字体。然后:</p>
<pre><code>> chcp
Active code page: 850
> chcp 65001
</code></pre>
<p>那么您应该在<code>cmd</code>中有unicode输出。你的“活动代码页”可能不同。请注意,在某个地方,因为您可能希望在以后更改它:</p>
^{pr2}$
<p>否则,您将遇到其他问题(启动<code>.bat</code>文件不起作用)。
(另见<a href="https://stackoverflow.com/questions/1427796/batch-file-encoding">batch-file-encoding</a>)</p>
<p>在脚本中,您还需要:</p>
<pre><code>import codecs
def cp65001(name):
"""This might be buggy, but better than just a LookupError
"""
if name.lower() == "cp65001":
return codecs.lookup("utf-8")
codecs.register(cp65001)
</code></pre>
<p>否则python将崩溃。(见<a href="https://stackoverflow.com/questions/878972/windows-cmd-encoding-change-causes-python-crash">windows-cmd-encoding-change-causes-python-crash</a>)</p>
<p>我的脚本也有类似的<a href="https://github.com/JonnyJD/musicbrainz-isrcsubmit/issues/40" rel="nofollow noreferrer">bug report</a>。在</p>
<hr/>
<p>您还可以考虑使用库来访问MusicBrainzWeb服务。
<a href="http://python-musicbrainzngs.readthedocs.org/" rel="nofollow noreferrer">Python-musicbrainzngs</a>与当前的ws/2一起工作。在</p>