J'ai de nombreux fichiers HTML et je souhaite les enregistrer sous forme de fichiers PDF locaux
J'ai donc essayé d'utiliser weasyprint pour convertir, mais je n'ai pas réussi
Quelqu'un peut-il m'aider à écrire le code ?
def pdf_generate(): try: pdf_file = HTML(string='56129.html').write_pdf() with open("my_pdf_file.pdf", 'wb') as f: f.write(pdf_file) except Exception as e: print(str(e)) return None
J'ai le fichier HTML localement et je souhaite également enregistrer le fichier PDF localement
J'ai mis en œuvre la réponse
def pdf_generate(): try: #将'56129.html'替换为你的HTML文件的路径 html_file_path = 'farm_management/scripts/56129.html' html = HTML(filename=html_file_path) pdf_file_path = 'my_pdf_file.pdf' pdf_file = html.write_pdf(pdf_file_path) with open("my_pdf_file.pdf", 'wb') as f: f.write(pdf_file) print(f'PDF文件已写入至:{pdf_file_path}') except Exception as e: print(str(e))
Et l'erreur suivante s'est produite
需要一个类似字节的对象,而不是'NoneType'
Si votre fichier HTML est une chaîne, vous devez utiliser la méthode
HTML(string=html_string).write_pdf()
.Cependant, s'il s'agit d'un fichier dans votre répertoire local, vous devez utiliser la méthode
HTML(filename=html_file_path).write_pdf()
.Le code est le suivant :