pyspotify的问题

1 投票
1 回答
1280 浏览
提问于 2025-04-18 04:08

我在尝试制作我的第一个Spotify应用时遇到了问题。我在树莓派上,使用的是Arch系统。

我把我的 __main__.py 文件和 spotify_appkey.key 文件放在一个文件夹里,然后通过 [root@RPI]# python2 __main__.py 来运行它。

我的 __main__.py 文件里的代码是这样的:

import spotify
print "1"
session = spotify.Session()
print "2"
try:
    session.login('myUsername', 'myPassword')
    print "3"
except IOError as e:
    print "error({0}): {1}".format(e.errno, e.strerror)

运行后我得到了这个输出:

1
2
Segmentation fault (core dumped)

我在这个 链接 上阅读后,也尝试了这个:

import spotify
print "1"
session = spotify.Session()
print "2"
config = spotify.Config()
print "3"
try:
    session.login('myUsername', 'myPassword')
    print "4"
except IOError as e:
    print "error({0}): {1}".format(e.errno, e.strerror)

结果是这样的:

1
2
Traceback ..... yada yada ...
    File "__main__.py" ... yada yada...
        config = spotify.Config()
AttributeError: 'module' object has no attribute 'Config'

我哪里做错了呢?

1 个回答

2

这里是pyspotify的作者:-)

dano说得对:看起来你在看v2.x的文档,但实际上你用的是v1.x。v2.x是一次全面的重写,提供了不同的、希望能更简单的接口,所以你必须使用与你编写代码的版本相匹配的文档:

在这个时候,我建议你为所有新的应用程序使用v2.x。v2.x的接口更容易使用,支持更多的Python版本,覆盖了完整的libspotify API,并且在积极维护中。第一个测试版v2.0.0b1昨天发布。最终的v2.0.0版本希望在几周内就能推出。

如果你想立即在Arch上运行pyspotify v2.x,可以使用yaourt安装libspotify:

sudo yaourt -S libspotify

使用pacman安装pyspotify的构建依赖:

sudo pacman -S base-devel

然后使用pip安装最新的pyspotify测试版(可以在虚拟环境中安装,或者使用sudo):

pip install --pre pyspotify

在pyspotify 2.0.0正式发布之前,--pre这个标志是必需的。

更多细节请查看 http://pyspotify.mopidy.com/en/latest/installation/.

pyspotify v2.x可能会在最终发布后不久出现在AUR中。

撰写回答