Python 3.6 urllib TypeError:无法将字节连接到 str

2023-12-21

我正在尝试使用 Python 3.6 中的 urllib 从 API 中提取一些 JSON 数据。它需要传递标头信息以进行授权。这是我的代码:

import urllib.request, json

headers = {"authorization" : "Bearer {authorization_token}"}

with urllib.request.urlopen("{api_url}", data=headers) as url:
   data = json.loads(url.read().decode())
   print(data)

我收到的错误消息是:

Traceback (most recent call last):
  File "getter.py", line 5, in <module>
with urllib.request.urlopen("{url}", data=headers) as url:
   File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 223, in urlopen
return opener.open(url, data, timeout)
  File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 526, in open
response = self._open(req, data)
  File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 544, in _open
'_open', req)
  File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
  File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 1361, in https_open
context=self._context, check_hostname=self._check_hostname)
  File "AppData\Local\Programs\Python\Python36-32\lib\urllib\request.py", line 1318, in do_open
encode_chunked=req.has_header('Transfer-encoding'))
  File "AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1239, in request
self._send_request(method, url, body, headers, encode_chunked)
  File "AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1285, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
  File "AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1234, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
  File "AppData\Local\Programs\Python\Python36-32\lib\http\client.py", line 1064, in _send_output
+ b'\r\n'
TypeError: can't concat bytes to str

Process finished with exit code 1

不太确定这里出了什么问题,我没有输入任何字节,所以我不确定为什么会收到错误消息,告诉我无法将字节连接到 str。


The data参数应该是一个类似字节的对象。您需要执行以下操作:

urllib.request.urlopen({api_url}, data=bytes(json.dumps(headers), encoding="utf-8"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 3.6 urllib TypeError:无法将字节连接到 str 的相关文章

  • 将 ical 附件的邮件消息的内容类型设置为“text/calendar; method=REQUEST”

    我正在尝试使用 App Engine 邮件 API 从 App Engine 发送 iCalendar 格式的 ics 文件 这在 GMail 中非常有效 但是 Outlook 无法识别该文件 我认为问题在于内容类型设置为 文本 日历 而不
  • 学习Python中的解析器

    我记得我读过有关解析器的内容 您只需提供一些示例行 它就知道如何解析某些文本 它只是确定两条线之间的差异 以了解可变部分是什么 我以为它是用 python 写的 但我不确定 有谁知道那是什么图书馆吗 可能你的意思是模板制作器 http co
  • pandas read_csv 之前预处理数据文件

    我使用 SAP 的数据输出 但它既不是 CSV 因为它不引用包含其分隔符的字符串 也不是固定宽度 因为它具有多字节字符 它是一种 固定宽度 字符 为了将其放入 pandas 我当前读取文件 获取分隔符位置 对分隔符周围的每一行进行切片 然后
  • 我可以在 matplotlib 中的绘图左侧放置一个垂直颜色条吗?

    来自颜色条方法的 matplotlib 命令摘要 http matplotlib org api pyplot api html highlight colorbar matplotlib pyplot colorbar我知道关键字参数or
  • 在Python中将大文件(25k条目)加载到dict中很慢?

    我有一个大约有 25000 行的文件 它是 s19 格式的文件 每行就像 S214780010 00802000000010000000000A508CC78C 像这样的事情怎么样 我做了一个测试文件 只有一行S21478001000802
  • 在多核上运行 python 线程

    我知道Python 2 7不允许在不同的内核上运行多个线程 你需要使用multiprocessing模块以实现某种程度的并发性 我正在看concurrent futuresPython 3 4 中的模块 是否使用ThreadPoolExec
  • pandas 数据框的最大大小

    我正在尝试使用读取一个有点大的数据集pandas read csv or read stata功能 但我不断遇到Memory Errors 数据帧的最大大小是多少 我的理解是 只要数据适合内存 数据帧就应该没问题 这对我来说不应该是问题 还
  • lmfit模型拟合然后预测

    我正在领养lmfit进行曲线拟合并使用拟合模型进行预测 然而下面的代码并没有达到我想要的效果 能否请你帮忙 谢谢 import numpy as np from lmfit import Model def linearModel x a0
  • 当元组列表中相同项目的值是字符串时,对它们的值求和

    如果我有这样的元组列表 my list books 5 books 10 ink 20 paper 15 paper 20 paper 15 我怎样才能把列表变成这样 books 15 ink 20 paper 50 即添加同一项目的费用
  • 使用 Python-VLC 的 PyInstaller:无属性“media_player_new”错误

    我使用 Python VLC 创建视频播放器 并使用 PyInstaller 在 Windows 10 计算机上生成可执行文件 最初 它给了我错误 Import Error Failed to load dynlib dll libvlc
  • Kivy TextInput 水平和垂直对齐(文本居中)

    如何在 Kivy 的 TextInput 中水平居中文本 I have the following screen But I want to centralize my text like this 这是我的 kv 语言的一部分 BoxLa
  • 使用具有可变数量索引的 numpy mggrid

    如何将 numpy mgrid 与可变数量的索引一起使用 我在 github 上找不到任何人将其与硬编码值以外的任何内容一起使用的示例 import numpy as np np mgrid 1 10 1 10 this works fin
  • 在python中使用编解码器utf-8打开文件错误

    我在 windows xp 和 python 2 6 4 上执行以下代码 但它显示 IOError 如何打开名称带有 utf 8 编解码器的文件 gt gt gt open unicode txt euc kr encode utf 8 T
  • 如何将 pandas DataFrame 转换为 TimeSeries?

    我正在寻找一种将 DataFrame 转换为 TimeSeries 而不拆分索引和值列的方法 有任何想法吗 谢谢 In 20 import pandas as pd In 21 import numpy as np In 22 dates
  • 列表中的特定范围(python)

    我有一个从文本字符串中提取的整数列表 因此当我打印该列表 我称之为test I get 135 2256 1984 3985 1991 1023 1999 我想打印或制作一个仅包含特定范围内的数字的新列表 例如1000 2000之间 我尝试
  • 解析整数集的字符串并列出间隔

    I have 2 5 7 9 12 string 我想从中获取 2 5 7 8 9 12 列表 python中有没有内置的函数 Thanks UPD 我想 直接的答案是No 不管怎样 谢谢你的 片段 使用一个 建议者斯文 马尔纳克 s 2
  • 如何使用 python 模块的多个 git 分支?

    我想使用 git 来同时处理我正在编写的模块中的多个功能 我目前正在使用 SVN 只有一个工作区 因此我的 PYTHONPATH 上只有该工作区 我意识到这不太理想 所以我想知道是否有人可以建议一种更 正确 的方法来做到这一点 让我用一个假
  • 带 Qt 的菜单栏/系统托盘应用程序

    我是 Qt PyQt 的新手 我正在尝试制作一个应用程序 其功能将从菜单栏 系统托盘执行 这里展示了一个完美的例子 我找不到关于如何做到这一点的好资源 有人可以建议吗 Thanks 我认为您正在寻找与QMenu and QMainWindo
  • 为数据集生成随机 JSON 结构排列

    我想生成 JSON 结构的许多不同排列作为同一数据集的表示 最好不需要对实现进行硬编码 例如 给定以下 JSON name smith occupation agent enemy humanity nemesis neo 应该产生许多不同
  • 将二进制数转换为包含每个二进制数的数组

    我试图将二进制值转换为每个 1 0 的列表 但我得到默认的二进制值而不是列表 我有一个字符串 我将每个字符转换为二进制 它给了我一个列表 其中每个字符都有一个字符串 现在我试图将每个字符串拆分为值为 0 1 的整数 但我什么也得不到 if

随机推荐

  • 如何在 MVC 应用程序中缓存数据

    我已经阅读了大量有关 MVC 应用程序中页面缓存和部分页面缓存的信息 但是 我想知道您如何缓存数据 在我的场景中 我将使用 LINQ to Entities 实体框架 在第一次调用 GetNames 或任何方法 时 我想从数据库中获取数据
  • SQL 伪随机文本生成器

    我正在对 SQL 存储过程进行一些性能测试 只想使用一个快速数据生成器进行测试 我正在寻找一种简单的方法来生成伪随机 在这种情况下不需要真正的随机 varchar 字段 到目前为止 我的想法是对可以使用的有效字符进行字符定义 然后根据该定义
  • 将活动发送到后台后如何重新获得对活动的访问权限

    使用 Espresso 我尝试测试使用 Home 按钮将 Activity 发送到后台 然后再次将其放在前台进行一些检查 EspressoTest public void test onSomeView check matches isDi
  • Laravel - 禁止您无权访问此服务器上的 /

    我的 laravel 安装昨天工作正常 但今天出现以下错误 Forbidden You don t have permission to access on this server Additionally a 403 Forbidden
  • 如何在 Delphi XE2 中向 Mac OS Finder 添加菜单项

    我正在开发针对 Mac OS 和 Windows 的 Delphi XE2 应用程序 我想集成到上下文菜单中 对于 Windows 这是一个简单的任务 但对于 Mac 操作系统我不知道该怎么做 我读了提供服务 http developer
  • 谷歌地图在真实的 Android 设备上是空白的 - 但可以在模拟器上使用

    Hola 我正在尝试让地图工作 它似乎在 Nexus 6 模拟器上运行良好 但是当我在 Moto G 或 Samsung Galaxy 上运行它时 地图完全是银行的 它只在底角包含 google 徽标 我已经生成了一个谷歌地图密钥并将其放入
  • 如何使共享操作图标变为白色而不是灰色

    我的应用程序有ShareAction图标如下所示 我如何让它变成白色而不是灰色 看起来现在已经禁用了 我的 XML 是 menu menu
  • 更改 JTable 中行的背景颜色

    我有一个包含 3 列的 JTable 我已经设置了TableCellRenderer对于所有这样的 3 列 也许不是很有效 for int i 0 i lt 3 i myJTable getColumnModel getColumn i s
  • 查找连接我的设备的串行端口

    我开始使用密码键盘工作 我需要我的程序找到密码键盘连接的端口 而无需用户交互 我尝试过 Dim searcher As New ManagementObjectSearcher root cimv2 SELECT FROM Win32 Se
  • MySQL 中的条件更新

    我在尝试着UPDATE表中的值 但我需要添加一些条件 我找到了这个功能CASE 但如果这是最好的方法 我不是 这是一个例子 我的表是 关系 userid1 userid2 name1 name2 我得到了例如 SELECT FROM rel
  • javax.imageio.ImageIO 在灰度图像上读取不正确的 RGB 值

    我有一个图像 将其命名为grayscale jpg 现在 我在 The Gimp 中打开该图像并将颜色模式更改为 RGB 并将其另存为 color jpg 如果我在任何图像查看器中查看grayscale jpg和color jpg 它们看起
  • css 我如何从检查器中找到css文件

    我必须搜索确切的 css 文件 其中对规则进行了更改 但我不记得该规则在哪里 如何从检查器中找到css文件 选择器附近有一个 CSS 文件名 primary unified 例如
  • 在c99中有没有办法让复合文字具有可变长度?

    我知道可以通过正常声明数组来获得在运行时确定长度的数组 char buf len 我知道我可以将数组声明为复合文字并将其分配给中途的指针 char buf buf char 5 0 但是 将两者结合起来不起作用 标准不允许 我的问题是 有什
  • Mac 上的 Cocoa 中区分单击和双击

    我有一个习惯NSView 这是其中之一 他们都住在一个NSCollectionView 我认为这不相关 但谁知道呢 当我单击视图时 我希望它更改其选择状态 并相应地重新绘制自身 当我双击视图时 我希望它为刚刚双击的对象弹出一个更大的预览窗口
  • Windows 中的 Visual Studio 文件关联

    在 Windows 资源管理器中 当我双击任何 Visual Studio 文件时 cs csproj等 它打开的是旧版本的 VS 而不是最新版本 VS 2017 而且VS与太多的文件类型有关联 我怎样才能改变default视觉工作室 对于
  • Python:使用 tarfile 提取但忽略目录

    如果我有一个带有文件的 tar 文件 path to file txt 有没有办法 在Python中 将文件提取到指定目录而不重新创建目录 path to 我也遇到了这个问题 并根据 ekhumoro 的回答列出了完整的示例 import
  • Angular HttpClient 获取请求 URL 删除主题标签/数字符号

    我正在使用 httpclient get 当我有 在请求 URL 中 它会删除后面的所有内容 Example 预期要求 https jsonplaceholder typicode com users 1 TEST 实际要求 https j
  • 具有自定义子项的 MUI 选择组件

    我正在尝试创建一个Select具有通过列表映射的一系列自定义项的组件 每个项目都有一个特定的类型 并且根据该类型 菜单项将具有特定的 MUI 图标 我创建了一个特定的组件来管理整个Select组件和另一个特定组件来显示每个项目 其值及其图标
  • 将内存中的 H2 数据库保存到磁盘

    如何以二进制模式将完整的嵌入式 h2 内存数据库保存 加载到某个文件或目录以加快加载速度 我想用它来缓存数据 这样我就不必每次都运行创建表 插入子句的所有行 您可以使用常规 持久 数据库 而不是使用内存数据库 即使这样 您仍然可以使用内存表
  • Python 3.6 urllib TypeError:无法将字节连接到 str

    我正在尝试使用 Python 3 6 中的 urllib 从 API 中提取一些 JSON 数据 它需要传递标头信息以进行授权 这是我的代码 import urllib request json headers authorization