You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pdfkit error: Exit with code 1 due to network error: ProtocolUnknownError
I'm trying to convert an HTML file to PFD with the pdfkit package. Here is my python code:
Code sample
location = os.path.join(files_path, f'user_data/temp/{code_generator(8)}')
with app.app_context():
html = render_template('email_templates/invoice.html', invoice=invoice)
with open(f"{location}.html",'w',encoding = 'utf-8') as f:
f.write(html)
pdfkit.from_file(f"{location}.html", `f"{location}.pdf")
But I'm getting this error:
Traceback (most recent call last):
File "/var/www/ifileshifts/run.py", line 3, in <module>
from ifileshifts import app, socketio#, manager
File "/var/www/ifileshifts/ifileshifts/__init__.py", line 53, in <module>
from ifileshifts.main.routes import main
File "/var/www/ifileshifts/ifileshifts/main/routes.py", line 6, in <module>
from .functions import first_otp_email, duplicate_handler, share_data, convert_size, get_size, is_integer
File "/var/www/ifileshifts/ifileshifts/main/functions.py", line 371, in <module>
invoice_genarator()
File "/var/www/ifileshifts/ifileshifts/main/functions.py", line 353, in invoice_genarator
pdfkit.from_file(f"{location}.html", f"{location}.pdf")
File "/usr/local/lib/python3.6/dist-packages/pdfkit/api.py", line 51, in from_file
return r.to_pdf(output_path)
File "/usr/local/lib/python3.6/dist-packages/pdfkit/pdfkit.py", line 201, in to_pdf
self.handle_error(exit_code, stderr)
File "/usr/local/lib/python3.6/dist-packages/pdfkit/pdfkit.py", line 155, in handle_error
raise IOError('wkhtmltopdf reported an error:\n' + stderr)
OSError: wkhtmltopdf reported an error:
Exit with code 1 due to network error: ProtocolUnknownError
What is wrong here? What is the solution?
Your environment
pdfkit version: 1.0.0
Node version: Python 3.6.9
Browser version (if applicable):
Operating System: Ubuntu 18.04
The text was updated successfully, but these errors were encountered:
I have the same exact issue - what you need to check is for any external references in the html you're passing down to wkhtmltopdf. For me, I was referencing a font file by a relative path, and I guess wkhtmltopdf doesn't know how to traverse the filesystem here or what the base path should be. I think that possibly the best option is to use only url references and be explicit about the protocol - the protocol unknown error being the clue here. So no // or file:// - try using https:// when referring to external content.
I had the same problem as you. If files such as images/css/fonts are located in the local storage next to the html file, you can use the following example:
pdfkit error: Exit with code 1 due to network error: ProtocolUnknownError
I'm trying to convert an HTML file to PFD with the pdfkit package. Here is my python code:
Code sample
But I'm getting this error:
What is wrong here? What is the solution?
Your environment
The text was updated successfully, but these errors were encountered: