pyspotify的问题
我在尝试制作我的第一个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版本: http://pyspotify.mopidy.com/en/latest/
- v2.0.0b1文档: http://pyspotify.mopidy.com/en/v2.0.0b1/
- v1.11文档: http://pyspotify.mopidy.com/en/v1.11/
在这个时候,我建议你为所有新的应用程序使用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中。