是否可以使用 Python 请求来更新 GitHub 存储库中的文件?

问题描述 投票:0回答:1

我需要在不使用 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}» 添加到有效负载中,或者完全复制点击链接时的内容,但这给出了相同的结果。

python python-3.x github python-requests github-api
1个回答
0
投票

没有 GitHub 使用 git,你可以做的是运行 git 命令来提交到你需要使用 python os.system 的存储库

© www.soinside.com 2019 - 2024. All rights reserved.