本帖已被设为精华帖!
你的 access_token
是不是用的文档示例上的?
根据文档的介绍,是需要根据 API Key
和 Secret Key
获取的,有效期为 30 天。
所以需要请求 2 次,先根据 API Key
和 Secret Key
请求获取到 access_token
,然后再根据 access_token
和图片获取文字。代码为:
let
token_url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=xxxxxxxxxxxxxxxxx&client_secret=xxxxxxxxxxxxxx",
token_headers = [#"Content-Type"="application/json; charset=UTF-8"],
token = Json.Document(Web.Contents(token_url,[Headers=token_headers,Content=Text.ToBinary("")]))[access_token],
img_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token="&token,
img_headers = [#"Content-Type"="application/x-www-form-urlencoded"],
img_content = "image="&Uri.EscapeDataString(Binary.ToText(File.Contents("C:\xxxxxxxxxxx.png"),BinaryEncoding.Base64)),
result = Table.FromRecords(Json.Document(Web.Contents(img_url,[Headers=img_headers,Content=Text.ToBinary(img_content)]))[words_result])
in
result
注意修改图片的路径和 API Key
及 Secret Key
为你自己的。