How to convert web page to PDF from link asynchronously for HTML to PDF API in PowerShell and PDF.co Web API
How to convert web page to PDF from link asynchronously for HTML to PDF API in PowerShell: Step By Step Tutorial
Here you may find thousands pre-made source code pieces for easy implementation in your own programming projects. PDF.co Web API was made to help with HTML to PDF API in PowerShell. PDF.co Web API is the Web API with a set of tools for documents manipulation, data conversion, data extraction, splitting and merging of documents. Includes image recognition, built-in OCR, barcode generation and barcode decoders to decode bar codes from scans, pictures and pdf.
PowerShell code samples for PowerShell developers help to speed up the application’s code writing when using PDF.co Web API. Open your PowerShell project and simply copy & paste the code and then run your app! Tutorials are available along with installed PDF.co Web API if you’d like to dive deeper into the topic and the details of the API.
ByteScout free trial version is available for FREE download from our website. Programming tutorials along with source code samples are included.
On-demand (REST Web API) version:
Web API (on-demand version)
On-premise offline SDK for Windows:
60 Day Free Trial (on-premise)
ConvertWebPageToPdfFromLinkAsynchronously.ps1
# Cloud API asynchronous "Web Page To PDF" job example. # Allows to avoid timeout errors when processing huge or scanned PDF documents. # The authentication key (API Key). # Get your own by registering at https://app.pdf.co/documentation/api $API_KEY = "***********************************" # URL of web page to convert to PDF document. $SourceUrl = "http://en.wikipedia.org/wiki/Main_Page" # Destination PDF file name $DestinationFile = ".\result.pdf" # (!) Make asynchronous job $Async = $true # Prepare URL for `Web Page to PDF` API call $query = "https://api.pdf.co/v1/pdf/convert/from/url" # Prepare request body (will be auto-converted to JSON by Invoke-RestMethod) # See documentation: https://apidocs.pdf.co $body = @{ "name" = $(Split-Path $DestinationFile -Leaf) "url" = $SourceUrl "async" = $Async } | ConvertTo-Json try { # Execute request $response = Invoke-WebRequest -Method Post -Headers @{ "x-api-key" = $API_KEY; "Content-Type" = "application/json" } -Body $body -Uri $query $jsonResponse = $response.Content | ConvertFrom-Json if ($jsonResponse.error -eq $false) { # Asynchronous job ID $jobId = $jsonResponse.jobId # URL of generated PDF file that will available after the job completion $resultFileUrl = $jsonResponse.url # Check the job status in a loop. do { $statusCheckUrl = "https://api.pdf.co/v1/job/check?jobid=" + $jobId $jsonStatus = Invoke-RestMethod -Method Get -Headers @{ "x-api-key" = $API_KEY } -Uri $statusCheckUrl # Display timestamp and status (for demo purposes) Write-Host "$(Get-date): $($jsonStatus.status)" if ($jsonStatus.status -eq "success") { # Download PDF file Invoke-WebRequest -Headers @{ "x-api-key" = $API_KEY } -OutFile $DestinationFile -Uri $resultFileUrl Write-Host "Generated PDF file saved as `"$($DestinationFile)`" file." break } elseif ($jsonStatus.status -eq "working") { # Pause for a few seconds Start-Sleep -Seconds 3 } else { Write-Host $jsonStatus.status break } } while ($true) } else { # Display service reported error Write-Host $jsonResponse.message } } catch { # Display request error Write-Host $_.Exception }
run.bat
@echo off powershell -NoProfile -ExecutionPolicy Bypass -Command "& .\ConvertWebPageToPdfFromLinkAsynchronously.ps1" echo Script finished with errorlevel=%errorlevel% pause
VIDEO
ON-PREMISE OFFLINE SDK
See also:
ON-DEMAND REST WEB API
Get Your API Key
See also: