用Python替换Google文档中的图片
我有一个谷歌文档,用作创建成千上万自动报告的模板。其中一部分是要把模板中的一些图片替换成正确的图片。我在获取要替换的图片的ID时遇到了困难,这听起来应该不复杂。根据这些文档 https://developers.google.com/docs/api/reference/rest/v1/documents/request#replaceimagerequest,要替换的现有图片的ID。这个ID可以从获取请求的响应中获取。
但我不知道该发什么请求。我试着这样获取文档:document = docs_service.documents().get(documentId=document_id).execute()
,但是我在里面没有看到明显的图片,除了可能有一个positionedObjectIds
字段。
这里是缺少字段的代码:
requests = [
{
"replaceImage": {
"imageObjectId": ¿where do I get this?,
"uri": f"https://drive.google.com/file/d/{image_id}/view?usp=drive_link",
"imageReplaceMethod": "CENTER_CROP",
}
}
]
提前谢谢你!
1 个回答
0
最后我不得不:
- 手动从文档中获取所有的图片ID,使用的代码是
document.get("body").get("content", [])
- 找到所有格式为
kix.z9k2rz42vt4f
的图片ID - 然后像这样调用命令,尝试我在第一步找到的每一个图片对象ID,直到成功为止:
{
"replaceImage": {
"imageObjectId": "kix.z9k2rz42vt4f",
"uri": f"https://drive.google.com/file/d/{new_image}/view?usp=drive_link",
"imageReplaceMethod": "CENTER_CROP",
}
}
当然可能还有更好的方法,但这个对我来说有效。我的uri值也是错的。