win10python3.6.3安装_Win10Python3.6安装impyla

安装依赖

pip installsix

pip installbit_array

pip installthrift

pip install thriftpy

pip install impyla

当安装依赖有vs的python包时,可能会出现以下错误:

PermissionError: [WinError 32] 另一个程序正在使用此文件,进程无法访问。: ‘C:\\Users\\15875\\AppData\\Local\\Temp\\pip-build-h3ir43bb\\murmurhash’

因为windowns下的终端显示用的还是gbk编码,所以还得修改pip的源代码

根据报错信息,找到D:\Python36\Lib\site-packages\pip-7.1.0-py3.6.egg\pip\compat\__init__.py

第49行

f sys.version_info >= (3,):

def console_to_str(s):

try:

return s.decode(sys.__stdout__.encoding)

except UnicodeDecodeError:

return s.decode(‘utf_8’)

把return s.decode(‘utf_8’)改为return s.decode(‘cp936’)即可。

安装成功后

执行代码

from impala.dbapi import connect

conn = connect(host=’my.host.com’, port=21050)

cursor = conn.cursor()

cursor.execute(‘SELECT * FROM mytable LIMIT 100’)

print cursor.description # prints the result set’s schema

results = cursor.fetchall()

报错

File

import happybase

File “D:\Program Files\python3.6\lib\site-packages\happybase\__init__.py”, line 10, in

‘Hbase_thrift’)

File “D:\Program Files\python3.6\lib\site-packages\thriftpy\parser\__init__.py”, line 30, in load

include_dir=include_dir)

File “D:\Program Files\python3.6\lib\site-packages\thriftpy\parser\parser.py”, line 496, in parse

url_scheme))

thriftpy.parser.exc.ThriftParserError: ThriftPy does not support generating module with path in protocol ‘d’

ThriftParserError: ThriftPy does not support generating module with path in protocol ‘d’

解决方法:

进入如下 你的Python的安装路径下,找到parser.py文件

D:\Program Files\python3.6\Lib\site-packages\thriftpy\parser

打开parser.py文件,找到488行。注释掉原来488行代码,添加为

if len(url_scheme) <= 1:

或者可以修改为

if url_scheme in (‘f’, ”):

如果是报错’d’上面就写’d’,‘f’就写’f’

#if url_scheme == ”:

if url_scheme in (‘d’, ‘c’,”,’e’,’f’):

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))

问题原因

原因:happybase1.0在win下不支持绝对路径

具体原因:happybase要读取Python\Lib\site-packages\happybase\Hbase.thrift,但在Python\Lib\site-packages\thriftpy\parser\parser.py中的487行

path是Hbase.thrift的绝对路径(我的是“F:\SoftWare\Python27\Lib\site-packages\happybase\Hbase.thrift”),但经过urlparse(path).scheme后,url_scheme变成了“f”,(这也就是报错信息中最后的“f”)。根据代码,url_scheme既不为“”,也不包含

(‘http’,’https’),则只能为raise报错。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值