我需要在不使用 PyGithub 的情况下更新 github 上的 .txt 文件。从我在网上找到的有关使用 Python 请求更新 GitHub 上的文件的信息来看,它总是返回 422 错误或“TypeError:字节类型的对象不是 JSON 可序列化”
下面的代码返回错误 422:
payload = {
"message": "update text.txt",
"content": "blah",
"sha": sha
}
r = requests.put('https://api.github.com/repos/<user>/<repo>/contents/text.txt', auth=(user, token), data=json.dumps(payload))
print(r.status_code)
转码时出现错误“TypeError:字节类型的对象不是 JSON 可序列化”:
m = "blah"
message_bytes = m.encode("utf-8")
content = base64.b64encode(message_bytes)
payload = {
"message": "update text.txt",
"content": content,
"sha": sha
}
我尝试将 «"author": {"name": name,"email": email}» 添加到有效负载中,或者完全复制点击链接时的内容,但这给出了相同的结果。
没有 GitHub 使用 git,你可以做的是运行 git 命令来提交到你需要使用 python os.system 的存储库