ConvertAPI:Python 2.7.10 中的 PDF 到 JPG - 如何获得转换结果 URL?
ConvertAPI: PDF to JPEG in Python 2.7.10 - how to get the conversion result URL?
我几乎是 Python 的菜鸟(以及一般的编码),所以如果我很愚蠢,请原谅。
我正在为自定义 Zapier 步骤编写一个简短的脚本,该脚本应该遍历 URL 的列表,选择以 .pdf 结尾的那些并将它们发送到 ConvertAPI,以便转换为 JPG。
到目前为止,向 ConvertAPI 发送请求有效,ConvertAPI 表示测试文件已转换。这是我的问题:如何返回转换后文件的结果 URL?如果我打印响应,我得到 Response [200]
,但没有其他可用的。
我试过打开Async
参数,但至今无济于事。据我了解,StoreFile
必须设置为 true,但似乎没有什么区别。
import requests
import json
url = 'https://v2.convertapi.com/convert/pdf/to/jpg?Secret=******' # Hidden
headers = {'content-type': 'application/json'}
payload = {
'Parameters': [
{
'Name': 'File',
'FileValue': {
'Url': 'to be populated'
}
},
{
'Name': 'StoreFile',
'Value': 'true'
}
]
}
a = ['https://www.bachmann.com/fileadmin/02_Produkte/03_Anschlussfelder/CONI/Downloads/CONI_3-4-6-way_Mounting_instructions_REV05.pdf','test2.jpg','test3.jpeg','test4.png','test4.exe']
for x in a:
if x[-3:] == 'pdf':
payload['Parameters'][0]['FileValue']['Url'] = x
response = requests.post(url, data=json.dumps(payload), headers=headers)
print(response)
elif x[-3:] == 'jpg' or x[-3:] == 'png' or x[-4:] == 'jpeg':
print('thats an image, nothing to do here')
print(response)
收到响应状态码所以收到200表示请求成功
要获得 url 你可以使用 .url
print(response.url)
ConvertAPI 有 Python 库 https://github.com/ConvertAPI/convertapi-python
这将帮助您使用下面的代码轻松地将 pdf 转换为 jpg。
import convertapi
import os
import tempfile
convertapi.api_secret = os.environ['CONVERT_API_SECRET'] # your api secret
jpg_result = convertapi.convert(
'jpg',
{
'File': 'files/test.pdf',
'ScaleImage': True,
'ScaleProportions': True,
'ImageHeight': 300,
'ImageWidth': 300,
}
)
saved_files = jpg_result.save_files(tempfile.gettempdir())
print("The thumbnail saved to %s" % saved_files)
一个朋友帮助我,有了这个IRL,就这样:
import requests
import json
output = {'output_urls' : []}
url = 'https://v2.convertapi.com/convert/pdf/to/jpg?Secret=xxxxxxx' # Hidden
headers = {'content-type': 'application/json'}
payload = {
'Parameters': [
{
'Name': 'File',
'FileValue': {
'Url': 'to be populated'
}
},
{
'Name': 'StoreFile',
'Value': 'true'
},
{
'Name': 'ScaleImage',
'Value': 'true'
},
{
'Name': 'ScaleProportions',
'Value': 'true'
},
{
'Name': 'ScaleIfLarger',
'Value': 'true'
},
{
'Name': 'ImageHeight',
'Value': '2200'
},
{
'Name': 'ImageWidth',
'Value': '1625'
}
]
}
for x in input_data['input_urls'].split(',') : # input_data is passed by Zapier
if x[-3:] == 'pdf':
payload['Parameters'][0]['FileValue']['Url'] = x
response = requests.post(url, data=json.dumps(payload), headers=headers)
response_obj = json.loads(response._content)
for file_url in response_obj['Files'] :
output['output_urls'].append(file_url['Url'])
elif x[-3:] == 'jpg' or x[-3:] == 'png' or x[-4:] == 'jpeg' :
output['output_urls'].append(x)
return output
我几乎是 Python 的菜鸟(以及一般的编码),所以如果我很愚蠢,请原谅。
我正在为自定义 Zapier 步骤编写一个简短的脚本,该脚本应该遍历 URL 的列表,选择以 .pdf 结尾的那些并将它们发送到 ConvertAPI,以便转换为 JPG。
到目前为止,向 ConvertAPI 发送请求有效,ConvertAPI 表示测试文件已转换。这是我的问题:如何返回转换后文件的结果 URL?如果我打印响应,我得到 Response [200]
,但没有其他可用的。
我试过打开Async
参数,但至今无济于事。据我了解,StoreFile
必须设置为 true,但似乎没有什么区别。
import requests
import json
url = 'https://v2.convertapi.com/convert/pdf/to/jpg?Secret=******' # Hidden
headers = {'content-type': 'application/json'}
payload = {
'Parameters': [
{
'Name': 'File',
'FileValue': {
'Url': 'to be populated'
}
},
{
'Name': 'StoreFile',
'Value': 'true'
}
]
}
a = ['https://www.bachmann.com/fileadmin/02_Produkte/03_Anschlussfelder/CONI/Downloads/CONI_3-4-6-way_Mounting_instructions_REV05.pdf','test2.jpg','test3.jpeg','test4.png','test4.exe']
for x in a:
if x[-3:] == 'pdf':
payload['Parameters'][0]['FileValue']['Url'] = x
response = requests.post(url, data=json.dumps(payload), headers=headers)
print(response)
elif x[-3:] == 'jpg' or x[-3:] == 'png' or x[-4:] == 'jpeg':
print('thats an image, nothing to do here')
print(response)
收到响应状态码所以收到200表示请求成功
要获得 url 你可以使用 .url
print(response.url)
ConvertAPI 有 Python 库 https://github.com/ConvertAPI/convertapi-python 这将帮助您使用下面的代码轻松地将 pdf 转换为 jpg。
import convertapi
import os
import tempfile
convertapi.api_secret = os.environ['CONVERT_API_SECRET'] # your api secret
jpg_result = convertapi.convert(
'jpg',
{
'File': 'files/test.pdf',
'ScaleImage': True,
'ScaleProportions': True,
'ImageHeight': 300,
'ImageWidth': 300,
}
)
saved_files = jpg_result.save_files(tempfile.gettempdir())
print("The thumbnail saved to %s" % saved_files)
一个朋友帮助我,有了这个IRL,就这样:
import requests
import json
output = {'output_urls' : []}
url = 'https://v2.convertapi.com/convert/pdf/to/jpg?Secret=xxxxxxx' # Hidden
headers = {'content-type': 'application/json'}
payload = {
'Parameters': [
{
'Name': 'File',
'FileValue': {
'Url': 'to be populated'
}
},
{
'Name': 'StoreFile',
'Value': 'true'
},
{
'Name': 'ScaleImage',
'Value': 'true'
},
{
'Name': 'ScaleProportions',
'Value': 'true'
},
{
'Name': 'ScaleIfLarger',
'Value': 'true'
},
{
'Name': 'ImageHeight',
'Value': '2200'
},
{
'Name': 'ImageWidth',
'Value': '1625'
}
]
}
for x in input_data['input_urls'].split(',') : # input_data is passed by Zapier
if x[-3:] == 'pdf':
payload['Parameters'][0]['FileValue']['Url'] = x
response = requests.post(url, data=json.dumps(payload), headers=headers)
response_obj = json.loads(response._content)
for file_url in response_obj['Files'] :
output['output_urls'].append(file_url['Url'])
elif x[-3:] == 'jpg' or x[-3:] == 'png' or x[-4:] == 'jpeg' :
output['output_urls'].append(x)
return output