如題~
情境描述:
在linebot上想讀取回傳的url
之前是以urllib.request.urlopen
方式開啟,後來改成gs://也一樣,如下code 進一步顯示:input_file 變數進來的是http response,可是最底下image_open()需要path 或file 作文字偵測。(之前PO過同一段,但卡在其他問題,有覺得code 熟習的版上前輩不好意思了~)
def text_detected(user_id):
input_file=f"gs://img_platecapture/{user_id}.jpg"
with io.open(input_file, 'rb') as image_file:
content = image_file.read()
image = vision.Image(content=content)
response = client.text_detection(image=image)
if response.error.message:
raise Exception(
'{}\nFor more info on error messages, check: '
'https://cloud.google.com/apis/design/errors'.format(
response.error.message))
img = Image.open(input_file)
找到的方式
blob.download_as_bytes()
,然後blob.download_to_filename
(跳出error 表示 blob 沒有down_as_bytes 這個attribute)求解
想請問版上的前輩,有否什麼辦法可以解決上述問題
1.以path 形式連動google cloud 中的文件
2.或者有無什麼方式可以從http response 轉成file 形式,以讓另外一個程式讀取