当前位置: 首页 > news >正文

python连接hive报错:TypeError: can‘t concat str to bytes

目录

一、完整报错

二、解决

三、 其他报错

四、impala方式连接hive


或者直接使用 pip install pyhive[hive] 安装。需要先 pip uninstall pyhive。

一、完整报错

Traceback (most recent call last):
  File "D:/Gitlab/my_world/hive2csv.py", line 18, in <module>
    conn = hive.Connection(host=host, port=port, username=username, password=password, database=database, auth=auth)
  File "D:\Anaconda3\lib\site-packages\pyhive\hive.py", line 269, in __init__
    self._transport.open()
  File "D:\Anaconda3\lib\site-packages\thrift_sasl\__init__.py", line 82, in open
    self._send_message(self.START, chosen_mech)
  File "D:\Anaconda3\lib\site-packages\thrift_sasl\__init__.py", line 103, in _send_message
    self._trans.write(header + body)
TypeError: can't concat str to bytes

二、解决

        2.1、进入D:\Anaconda3\lib\site-packages\thrift_sasl\__init__.py文件

        2.2、添加如下代码到第101行之前

if (type(body) is str):body = body.encode()
2.2,修改后情况

        然后就可以运行了。

三、 其他报错

        报错:AttributeError: 'TSaslClientTransport' object has no attribute 'readAll'

        解决:pip install thrift_sasl==0.3.0

其他报错可以参考文章:python连接hive

四、impala方式连接hive

        4.1、依赖包

pip install six bit_array thrift thrift_sasl sqlalchemy impyla -i https://pypi.tuna.tsinghua.edu.cn/simple

        4.2、代码

from impala.dbapi import connectconn = connect(host=host,port=port,user=username,password=password,auth_mechanism=auth,database=database)
def get_sql_result(sql):# 鎵ц鏌ヨ骞惰幏鍙栫粨鏋?    cursor = conn.cursor()cursor.execute(sql)result = cursor.fetchall()columns = [desc[0] for desc in cursor.description]return result,columnsif __name__ == '__main__':hive_sql = 'show databases'result,columns = get_sql_result(hive_sql)df = pd.DataFrame(result,columns=columns)

 

相关文章:

python连接hive报错:TypeError: can‘t concat str to bytes

目录 一、完整报错 二、解决 三、 其他报错 四、impala方式连接hive 或者直接使用 pip install pyhive[hive] 安装。需要先 pip uninstall pyhive。 一、完整报错 Traceback (most recent call last): File "D:/Gitlab/my_world/hive2csv.py", line 18, in <…...

虹科示波器 | 汽车免拆检修 | 2015款奔驰G63AMG车发动机偶尔自动熄火

一、故障现象 一辆2015款奔驰G63AMG车&#xff0c;搭载157发动机&#xff0c;累计行驶里程约为9.4万km。车主反映&#xff0c;该车低速行驶时&#xff0c;发动机偶尔会自动熄火&#xff0c;故障大概1个星期出现1次。 二、故障诊断 接车后路试&#xff0c;故障未能再现。用故障检…...

10 Redis的持久化

Redis支持RDB和AOF两种持久化机制 1、RDB(Redis DataBase) 是对命令的全量快照随着key的数量增大&#xff0c;那么写入磁盘的开销也会越来越大 2、RDB文件的生成是否会阻塞主线程 save: 使用save的方式会阻塞主线程&#xff0c;影响redis的性能 bgsave: 一般情况下不会阻塞…...

【Linux入侵日志排查】

在Linux系统中&#xff0c;不同的服务和应用程序可能会产生不同格式的日志记录。以下是一些常见类型的日志文件及其格式说明&#xff1a; 以下是一些常见的 Linux 日志字段格式说明&#xff0c;以及具体的示例&#xff1a; /var/log/auth.log&#xff1a;此日志文件包含与身份…...

从哪些方面分析Linux内核源码

从这些方面分析Linux内核源码&#xff0c;这里提供一个大致的大纲&#xff1a; 一、Linux内核源码概述 1. 什么是Linux内核&#xff1f; 2. Linux内核的主要功能 3. Linux内核的版本控制 4. Linux内核的组织结构 二、Linux内核编译与配置 1. 获取Linux内核源码 2. 安装…...

C#WPF数据模板应用实例

一、数据模板定义 数据模板是一块定义如何显示绑定的数据对象的XAML标记。 有两种类型的控件支持数据模板: 1、内容控件 通过ContentTemplate属性支持数据模板。内容模板用于显示任何放置在Content属性中的内容。 2、列表控件(继承自ItemsControl类的控件) 通过ItemsTem…...

ansible练习题1

安装并配置ansible 在控制节点上安装并配置Ansible,要求如下: | 安装所需的软件包: 创建静态inventory文件/home/student/ansible/inventory ,要求如下: servera属于dev主机组 serverb属于test和balancers主机组 serverc和serverd属于prod主机组 …...

六大排序详讲(直接插入排序+希尔排序+选择排序+堆排序+冒泡排序+快速排序)

文章目录 排序一、 排序的概念1.排序&#xff1a;2.稳定性&#xff1a;3.内部排序&#xff1a;4.外部排序&#xff1a; 二、插入排序1.直接插入排序2.希尔排序 三、选择排序1.直接选择排序方法一方法二直接插入排序和直接排序的区别 2.堆排序 四、交换排序1.冒泡排序2.快速排序…...

Clickhouse初认识

技术主题-clickhouse 一什么是clickHouse 1&#xff09;本质上就是一款数据库管理系统&#xff0c;能提供海量数据的存储和检索 2&#xff09;基于列存储&#xff0c;数据是按照列进行存储的&#xff08;数据格式一样&#xff0c;方便进行压缩&#xff09; 3&#xff09;具备…...

网络安全项目简介

安全项⽬ 基线检查 更改缺省的账户检查Guest用户是否禁用密码复杂性密码长度账户口令的生存期口令重复次数口令认证失败次数口令到期提示域成员禁用更改机器账户密码限制匿名用户连接共享账户检查远程关机授权是否开启默认文件共享每个用户是否遵循最小权限原则adminstrator账…...

CSDN每日一题学习训练——Python版(N皇后 II、买卖股票的最佳时机 II、编程通过键盘输入每一位运动员)

版本说明 当前版本号[20231120]。 版本修改说明20231120初版 目录 文章目录 版本说明目录N皇后 II题目解题思路代码思路参考代码 买卖股票的最佳时机 II题目解题思路代码思路参考代码 编程通过键盘输入每一位运动员题目解题思路代码思路参考代码 N皇后 II 题目 n 皇后问题…...

semodule工具详解(1)

本文内容参考&#xff1a; semodule(8) - Linux manual page https://linux.die.net/man/8/semodule 1. 介绍 名称 semoudule —— 管理SELinux策略模块。 简介 semodule [options]... MODE [MODES]... 描述 semodule是用于管理SELinux策略模块的工具&#xff0c;包括安装…...

用百度AI大模型给头像换风格

心血来潮想尝试尝试AI小应用&#xff0c;给图片加个风格&#xff08;例如微信头像&#xff09;&#xff0c;于是有了这篇简短的教程 目录 1. 领取免费资源2. 在应用列表创建应用3. 在线API调试4. 效果对比 1. 领取免费资源 网站&#xff1a;百度智能云 百度给提供了很多AIGC的…...

从入门到精通,mac电脑录屏软件使用教程!

“mac电脑怎么录屏呀&#xff0c;刚买了一台mac电脑&#xff0c;用了几个月感觉挺流畅的&#xff0c;最近因为工作原因&#xff0c;需要用到录屏功能&#xff0c;但是我不会操作&#xff0c;想问问大家有没有简单易懂的录屏教程&#xff0c;谢谢啦。” 在日常生活中&#xff0…...

Nginx(反向代理,负载均衡,动静分离)

反向代理 Nginx反向代理是一种将客户端请求转发给后端服务器的技术&#xff0c;即反向代理服务器。在这种架构中&#xff0c;客户端请求首先到达Nginx服务器&#xff0c;然后由Nginx服务器将请求转发给后端服务器&#xff0c;后端服务器响应请求&#xff0c;并将响应传递回Ngi…...

【Spring】SpringBoot的扩展点之ApplicationContextInitializer

简介 其实spring启动步骤中最早可以进行扩展的是实现ApplicationContextInitializer接口。来看看这个接口的注释。 package org.springframework.context;/*** Callback interface for initializing a Spring {link ConfigurableApplicationContext}* prior to being {linkpl…...

哈希表HashTable

散列表&#xff08;Hash table&#xff0c;也叫哈希表&#xff09;&#xff0c;是根据键&#xff08;Key&#xff09;而直接访问在内存存储位置的数据结构。 哈希表中关键码就是数组的索引下标&#xff0c;然后通过下标直接访问数组中的元素&#xff0c;复杂度O(1) 哈希表本质…...

【软件测试】一位优秀测试工程师具备哪些知识和经验?

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 根据观察&#xf…...

MongoDB相关基础操作(库、集合、文档)

文章目录 一、库的相关操作1、查看数据库2、查看当前库3、创建数据库4、删除数据库 二、集合的相关操作1、查看库中所有集合2、创建集合2.1、显示创建2.2、隐式创建 3、删除集合 三、文档的相关操作1、插入文档1.1、插入单条文档1.2、插入多条文档1.3、脚本方式 2、查询文档3、…...

进程和线程( Process and Thread)

目录 一、操作系统&#xff08;Operating System&#xff09; 操作系统的定位 二、 什么是进程/任务&#xff08;Process/Task&#xff09; 1.进程控制块抽象(PCB Process Control Block) 2.PCB中重要的属性 3.并发编程 三、线程&#xff08;Thread&#xff09; 1. 线程是…...

CANN/shmem原理与架构详解

SHMEM原理概述 【免费下载链接】shmem CANN SHMEM 是面向昇腾平台的多机多卡内存通信库&#xff0c;基于OpenSHMEM 标准协议&#xff0c;实现跨设备的高效内存访问与数据同步。 项目地址: https://gitcode.com/cann/shmem SHMEM初始化流程介绍 shmem的初始化接口int ac…...

Godot双网格瓦片地图系统:实现逻辑与渲染分离的2D地图架构

1. 项目概述&#xff1a;一个为Godot引擎设计的双网格瓦片地图系统如果你在Godot引擎里做过2D游戏&#xff0c;尤其是那种需要复杂地形、多层结构或者动态拼接的地图&#xff0c;大概率会对内置的TileMap节点又爱又恨。爱的是它上手快&#xff0c;拖拽就能铺地图&#xff1b;恨…...

Linux xargs 命令深度解析:从管道到命令构建的桥梁

在 Linux 终端里&#xff0c;管道符 | 可以说是最常用的操作符了。但很多人遇到过这种情况&#xff1a;管道前面的命令输出了一堆文件名&#xff0c;想传给后面的命令处理&#xff0c;结果报错了。 # 删除所有 .log 文件 find . -name "*.log" | rm rm: missing ope…...

基于Tauri+React+TS构建跨平台开发者效率工具:集成AI编程与Git Worktree

1. 项目概述&#xff1a;一个为现代开发者打造的桌面效率工具 如果你和我一样&#xff0c;每天的工作流都离不开终端、代码编辑器和各种AI助手&#xff0c;那你一定也经历过这种场景&#xff1a;在多个项目间频繁切换&#xff0c;终端里塞满了十几个标签页&#xff0c;想找个昨…...

AI赋能非洲医疗:疾病预测模型落地实战与挑战解析

1. 项目概述&#xff1a;当AI遇见非洲医疗的十字路口“AI赋能非洲医疗”&#xff0c;这个标题背后&#xff0c;远不止是一个技术应用的故事&#xff0c;它更像是一场在资源、文化与技术之间寻找平衡点的深刻实践。作为一名长期关注技术落地与全球健康议题的从业者&#xff0c;我…...

2025届必备的五大降重复率网站解析与推荐

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 将文本里的AIGC痕迹予以降格处理&#xff0c;其关键环节在于对AI所具备的规律性表达予以破除…...

用Pluto SDR和MATLAB复现经典:四种模拟波形传输实测与波形畸变全解析

用Pluto SDR和MATLAB复现经典&#xff1a;四种模拟波形传输实测与波形畸变全解析 在通信工程实验室里&#xff0c;我们常常需要验证教科书上的理论——那些关于信号完整性、采样定理和滤波器效应的数学推导&#xff0c;是否真的能在实际硬件中重现&#xff1f;Pluto SDR作为一…...

AI绘画:从工具到协作伙伴的范式转变与实战指南

1. 项目概述&#xff1a;当画笔遇见算法几年前&#xff0c;我还在为一个商业项目绘制系列插画&#xff0c;连续熬夜赶稿是常态。直到有一天&#xff0c;我尝试将一张未完成的线稿丢进一个当时还不太成熟的AI绘画工具里&#xff0c;让它帮我“脑补”几个背景方案。结果出来的效果…...

可解释AI的对抗攻击与防御:从SHAP/LIME脆弱性到鲁棒性实践

1. 项目概述&#xff1a;当AI的“黑箱”遭遇“压力测试”在AI模型日益渗透到信贷审批、医疗诊断、司法辅助等关键决策领域的今天&#xff0c;一个核心的信任危机始终悬而未决&#xff1a;我们如何相信一个自己都无法完全理解的“黑箱”系统&#xff1f;可解释人工智能&#xff…...

AI赋能人才分析:从数据清洗到算法应用的全景解析

1. 项目概述&#xff1a;当AI遇见人才管理在人力资源这个传统上高度依赖“直觉”和“经验”的领域&#xff0c;一场静默的革命正在发生。过去&#xff0c;HR经理们筛选简历、评估候选人、预测员工离职风险&#xff0c;很大程度上依赖于个人判断和有限的量化指标。然而&#xff…...