本文主要是介绍调用happybase时报错,ThriftPy does not support generating module with path in protocol 'd',希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
今天在调用happybase时一直在报错
原因:happybase1.0在win下不支持绝对路径
具体原因:happybase要读取Python\Lib\site-packages\happybase\Hbase.thrift,但在Python\Lib\site-packages\thriftpy\parser\parser.py中的487行
# parser.py line 487
url_scheme = urlparse(path).scheme
if url_scheme == '':with open(path) as fh:data = fh.read()
elif url_scheme in ('http', 'https'):data = urlopen(path).read()
else:raise ThriftParserError('ThriftPy does not support generating module ''with path in protocol \'{}\''.format(url_scheme))
改为
url_scheme = urlparse(path).scheme#if url_scheme == '':if url_scheme in ('d', ''):with open(path) as fh:data = fh.read()elif url_scheme in ('http', 'https'):data = urlopen(path).read()else:raise ThriftParserError('ThriftPy does not support generating module ''with path in protocol \'{}\''.format(url_scheme))
注:’d’为盘符,就是我把python装在了d盘,只要能让那个判断为真就行。
参考:https://github.com/eleme/thriftpy/issues/234
这篇关于调用happybase时报错,ThriftPy does not support generating module with path in protocol 'd'的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!