How to convert images to PDF from uploaded files for image to PDF API in Python and PDF.co Web API

How to convert images to PDF from uploaded files for image to PDF API in Python: Step By Step Instructions

Every ByteScout tool includes sample Python source codes that you can find here or in the folder with installed ByteScout product. PDF.co Web API was designed to assist image to PDF API in Python. PDF.co Web API is the Rest API that provides set of data extraction functions, tools for documents manipulation, splitting and merging of pdf files. Includes built-in OCR, images recognition, can generate and read barcodes from images, scans and pdf.

This simple and easy to understand sample source code in Python for PDF.co Web API contains different functions and options you should do calling the API to implement image to PDF API. Open your Python project and simply copy & paste the code and then run your app! This basic programming language sample code for Python will do the whole work for you in implementing image to PDF API in your app.

PDF.co Web API – free trial version is available on our website. Also, there are other code samples to help you with your Python application included into trial version.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

ConvertImagesToPdfFromUploadedFiles.py
      
import os import requests # pip install requests # The authentication key (API Key). # Get your own by registering at https://app.pdf.co/documentation/api API_KEY = "**************************************" # Base URL for PDF.co Web API requests BASE_URL = "https://api.pdf.co/v1" # Source image files ImageFiles = [".\\image1.png", ".\\image2.jpg"] # Destination PDF file name DestinationFile = ".\\result.pdf" # Container for uploaded image file's url UploadedImageFileUrls = [] def main(args = None): for inpImage in ImageFiles: inp_upload_file_url = uploadFile(inpImage) UploadedImageFileUrls.append(inp_upload_file_url) if len(UploadedImageFileUrls) > 0: uploadedFileUrl = ",".join(UploadedImageFileUrls) convertImageToPDF(uploadedFileUrl, DestinationFile) def convertImageToPDF(uploadedFileUrl, destinationFile): """Converts Image to PDF using PDF.co Web API""" # Prepare URL for 'Image To PDF' API request url = "{}/pdf/convert/from/image?name={}&url={}".format( BASE_URL, os.path.basename(destinationFile), uploadedFileUrl ) # Execute request and get response as JSON response = requests.get(url, headers={ "x-api-key": API_KEY, "content-type": "application/octet-stream" }) if (response.status_code == 200): json = response.json() if json["error"] == False: # Get URL of result file resultFileUrl = json["url"] # Download result file r = requests.get(resultFileUrl, stream=True) if (r.status_code == 200): with open(destinationFile, 'wb') as file: for chunk in r: file.write(chunk) print(f"Result file saved as \"{destinationFile}\" file.") else: print(f"Request error: {response.status_code} {response.reason}") else: # Show service reported error print(json["message"]) else: print(f"Request error: {response.status_code} {response.reason}") def uploadFile(fileName): """Uploads file to the cloud""" # 1. RETRIEVE PRESIGNED URL TO UPLOAD FILE. # Prepare URL for 'Get Presigned URL' API request url = "{}/file/upload/get-presigned-url?contenttype=application/octet-stream&name={}".format( BASE_URL, os.path.basename(fileName)) # Execute request and get response as JSON response = requests.get(url, headers={ "x-api-key": API_KEY }) if (response.status_code == 200): json = response.json() if json["error"] == False: # URL to use for file upload uploadUrl = json["presignedUrl"] # URL for future reference uploadedFileUrl = json["url"] # 2. UPLOAD FILE TO CLOUD. with open(fileName, 'rb') as file: requests.put(uploadUrl, data=file, headers={ "x-api-key": API_KEY, "content-type": "application/octet-stream" }) return uploadedFileUrl else: # Show service reported error print(json["message"]) else: print(f"Request error: {response.status_code} {response.reason}") return None if __name__ == '__main__': main()

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit PDF.co Web API Home Page

Explore PDF.co Web API Documentation

Explore Samples

Sign Up for PDF.co Web API Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

VIDEO

ON-PREMISE OFFLINE SDK

60 Day Free Trial or Visit PDF.co Web API Home Page

Explore PDF.co Web API Documentation

Explore Samples

Sign Up for PDF.co Web API Online Training

ON-DEMAND REST WEB API

Get Your API Key

Explore Web API Docs

Explore Web API Samples

Related Samples: