[英]Calling parse from six in python2.7
似乎Python2.7不支持模块6,因此如果我调用一个导入它的模块,如下所示:
from six.moves.urllib import parse
然后我得到:
NameError: global name 'parse' is not defined
有谁知道是否有Python2.7模块可以替代该模块?
编辑:
这是回溯(这是使用foursquare模块的API抓取工具,这是问题调用parse ...的地方):
me@myplace.com [~/scraping/fsquare]# python2.7 fsquare.py
Traceback (most recent call last):
File "fsquare.py", line 24, in <module>
auth_url = client.oauth.auth_url()
File "/home/me/scraping/fsquare/foursquare/__init__.py", line 157, in auth_url
params=parse.urlencode(params))
NameError: global name 'parse' is not defined
您几乎肯定可以在代码中包含以下内容:
def f():
params = parse.urlencode("...")
f()
from six.moves.urllib import parse
在导入解析之前,您已经在某处调用了函数。
查看源代码 ,第155行显示了params=parse.urlencode(params))
行,但是回溯显示了第157行,因此您修改了源代码或使用的版本早于11个月了时间foursquare/__init__.py
已更新,很可能您已修改了某些内容。
您可能需要考虑实际安装软件包,而不是从同一文件夹运行代码:
pip2 install foursquare
然后从其他目录运行脚本,这将为您提供确定的答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.