Tweepy 不会安装在 python 3.7 上;显示 "syntax error"
Tweepy won't install on python 3.7; shows "syntax error"
在开始之前,我想先声明一下,我对 python 比较陌生,在我的这个小项目之前没怎么用过它。我正在尝试制作一个 Twitter 机器人作为艺术项目的一部分,但我似乎无法导入。我使用的是 macOS High Sierra 和 Python 3.7。我首先使用
安装了 tweepy
pip3 install tweepy
这似乎有效,因为我能够在 finder 中找到 tweepy 文件。但是,当我简单地输入
import tweepy
进入 IDLE,我得到这个错误:
Traceback (most recent call last):
File "/Users/jacobhill/Documents/CicadaCacophony.py", line 1, in <module>
import tweepy
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tweepy/__init__.py", line 17, in <module>
from tweepy.streaming import Stream, StreamListener
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tweepy/streaming.py", line 358
def _start(self, async):
^
SyntaxError: invalid syntax
知道如何解决这个问题吗?我查看了此处的其他帖子,其他错误似乎与 "tweepy module not found" 类似,所以我不知道如何处理我的错误。谢谢!
In Python3.7, async
became a reserved word (as can be seen in whats new section here) 因此不能用作参数。这就是引发此 Syntax Error
的原因。
也就是说,和下面tweetpy
的官方GitHub (here),只有
Python 2.7, 3.4, 3.5 & 3.6 are supported.
但是,如果您确实必须使用 Python3.7,则有一个解决方法。按照this的建议,您可以
open streaming.py and replace async
with async_
它应该可以工作
使用 async
作为标识符 has been deprecated since Python 3.5, and became an error in Python 3.7,因为它是关键字。
这个 Tweepy 错误是 reported on 16 Mar, and fixed on 12 May, but there hasn't been a new release yet. Which is why, as the repo's main page says:
Python 2.7, 3.4, 3.5 & 3.6 are supported.
暂时可以安装开发版:
pip3 install git+https://github.com/tweepy/tweepy.git
或者,因为您已经安装了早期版本:
pip3 install --upgrade git+https://github.com/tweepy/tweepy.git
您也可以按照存储库中的说明进行操作:
git clone https://github.com/tweepy/tweepy.git
cd tweepy
python3 setup.py install
但是,这意味着 pip
可能无法完全理解您安装的内容。
在开始之前,我想先声明一下,我对 python 比较陌生,在我的这个小项目之前没怎么用过它。我正在尝试制作一个 Twitter 机器人作为艺术项目的一部分,但我似乎无法导入。我使用的是 macOS High Sierra 和 Python 3.7。我首先使用
安装了 tweepypip3 install tweepy
这似乎有效,因为我能够在 finder 中找到 tweepy 文件。但是,当我简单地输入
import tweepy
进入 IDLE,我得到这个错误:
Traceback (most recent call last):
File "/Users/jacobhill/Documents/CicadaCacophony.py", line 1, in <module>
import tweepy
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tweepy/__init__.py", line 17, in <module>
from tweepy.streaming import Stream, StreamListener
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tweepy/streaming.py", line 358
def _start(self, async):
^
SyntaxError: invalid syntax
知道如何解决这个问题吗?我查看了此处的其他帖子,其他错误似乎与 "tweepy module not found" 类似,所以我不知道如何处理我的错误。谢谢!
In Python3.7, async
became a reserved word (as can be seen in whats new section here) 因此不能用作参数。这就是引发此 Syntax Error
的原因。
也就是说,和下面tweetpy
的官方GitHub (here),只有
Python 2.7, 3.4, 3.5 & 3.6 are supported.
但是,如果您确实必须使用 Python3.7,则有一个解决方法。按照this的建议,您可以
open streaming.py and replace
async
withasync_
它应该可以工作
使用 async
作为标识符 has been deprecated since Python 3.5, and became an error in Python 3.7,因为它是关键字。
这个 Tweepy 错误是 reported on 16 Mar, and fixed on 12 May, but there hasn't been a new release yet. Which is why, as the repo's main page says:
Python 2.7, 3.4, 3.5 & 3.6 are supported.
暂时可以安装开发版:
pip3 install git+https://github.com/tweepy/tweepy.git
或者,因为您已经安装了早期版本:
pip3 install --upgrade git+https://github.com/tweepy/tweepy.git
您也可以按照存储库中的说明进行操作:
git clone https://github.com/tweepy/tweepy.git
cd tweepy
python3 setup.py install
但是,这意味着 pip
可能无法完全理解您安装的内容。