[PYTHON] Convertissez plusieurs fichiers jpg en un seul fichier PDF

Chose que tu veux faire

Je souhaite créer un fichier PDF de fichiers image détaillés (jpg ou JPEG ou JPG) importés par un scanner, etc. Les détails sont divisés par répertoire et chaque division est regroupée dans un fichier PDF. Dans l'annuaire, ils sont organisés par date

ls ~/scan/meisai/
Déclaration d'assurance automobile
Déclaration d'assurance automobile/2017/
Déclaration d'assurance automobile/2018/
Déclaration d'assurance automobile/2019/
Déclaration d'assurance automobile/2020/
Carte de crédit A/2017/
Carte de crédit A/2018/
Carte de crédit A/2019/
Carte de crédit A/2020/
Déclaration médicale 2020_01_20.jpg
  .DS_store

Il existe plusieurs fichiers image dans une telle structure de répertoires. Résumez-le comme suit

ls ~/scan/meisai_pdf/
Déclaration d'assurance automobile.pdf
Carte de crédit A.pdf
  .DS_store

Supprimez manuellement le fichier image utilisé.

Ce qui a été utilisé

python3 import os import img2pdf

code

import os
import img2pdf

EXP_DIR = "/Users/myname/scan/meisai"
OUT_DIR = "/Users/myname/scan/meisai_pdf"


def extract_image_file_list(folder_path):
    ret = []
    if os.path.isdir(folder_path) == False:
        return ret 
    for t in sorted(os.listdir(path=folder_path)):
        if os.path.isdir(folder_path + "/" + t):
            #Suivez le répertoire de manière récursive
            ret += extract_image_file_list(folder_path + "/" + t)
        else:
            ret.append(folder_path + "/" + t)
    return ret

def image_to_pdf(pdf_name,image_list):
    convert_target = []
    for i in image_list:
        if i.endswith(".jpg ") or i.endswith(".JPG") or i.endswith(".jpeg "):  
            convert_target.append(i)
    if len(convert_target) == 0:
        return
    with open(pdf_name + ".pdf", "wb") as f:
        f.write(img2pdf.convert(convert_target))

#os.chdir(EXP_DIR)  #Si vous souhaitez vous déplacer vers un répertoire et traiter avec un chemin relatif.
for path in os.listdir(path=EXP_DIR):
    print(path)
    files = extract_image_file_list(EXP_DIR + "/" + path)
    image_to_pdf(OUT_DIR + "/" + path,files)

Recommended Posts

Convertissez plusieurs fichiers jpg en un seul fichier PDF
Convertir des fichiers PDF en fichiers PNG avec GIMP
Combinez plusieurs fichiers python en un seul fichier python
[Python & Unix] Combinez plusieurs fichiers PDF en un seul.
Conversion par lots de fichiers PSD du répertoire en PDF
Les débutants essaient de convertir des fichiers Word en PDF à la fois
Convertir le HTML en fichier texte
Convertir le fichier genbank en fichier gff
Conversion par lots de fichiers image téléchargés vers MS Forms / Google Forms vers PDF
Convertir un PDF en documents par OCR
Convertir un PDF A4 en A3 toutes les 2 pages
Comment convertir 0,5 en 1056964608 en un seul coup
Conversion de pdf en txt 2 [pyocr]
Convertir un PDF en image avec ImageMagick
Convertir des fichiers écrits en python, etc. en pdf avec la coloration syntaxique
Convertissez un grand nombre de fichiers PDF en fichiers texte à l'aide de pdfminer
[Python] Comment convertir un fichier db en csv
Comment convertir Python en fichier exe
Convertir le graphique matplotlib au format de fichier emf
Convertir de PDF en CSV avec pdfplumber
Convertir un fichier psd en png en Python
Convertir un PDF joint en courrier électronique au format texte
Convertir plusieurs CSV en chaque feuille Excel
[Bash] Redirection de plusieurs lignes vers plusieurs fichiers
Créez une API pour convertir des fichiers PDF en images TIF avec FastAPI et Docker
Comment convertir des pages Web en PDF, PNG, JPG avec VBA (Excel) (Selenium Basic)
Convertir le fichier FBX en ASCII <-> BINARY en Python
Convertir un PDF en image (JPEG / PNG) avec Python
Convertir un fichier svg en png / ico avec Python
Convertir des fichiers CSV UTF-8 pour les lire dans Excel
Convertir une liste multidimensionnelle (tableau) en une dimension
[Petite histoire] Un moyen simple de convertir Jupyter en PDF
Convertissez plusieurs fichiers proto à la fois avec python
Exemple pour mettre Python Kivy dans un fichier
Convertir en HSV
Un script qui combine plusieurs pages d'un fichier PDF en une seule page sans marges
Combinez plusieurs fichiers csv en un seul fichier csv avec python (en supposant qu'une seule ligne d'en-tête)
Convertir le fichier .ipynb du notebook jupyter en fichier .py exécutable python
Convertir un fichier texte avec des valeurs hexadécimales en fichier binaire
[Python] Convertir le texte PDF en CSV pour chaque page (2/24 postscript)
Convertissez l'image au format .zip en PDF avec Python
Comment convertir un fichier JSON en fichier CSV avec Python Pandas
Convertir le vecteur de valeur entière en une représentation chaude
Comment convertir un spectrogramme Mel en un fichier wav
Comment ajouter des numéros de page à un fichier PDF (en Python)
Convertissez plusieurs blocs-notes Jupyter ensemble en un fichier html
Comment convertir des fichiers Json au format CSV ou au format EXCEL
Convertir le fichier de ressources de traduction (.po) au format XLIFF (.xlf)
Convertissez les fichiers MOL en SMILES via les E / S standard
Combinez plusieurs fichiers Excel chargés à l'aide de pandas en un seul
Convertir le fichier XML au format Pascal VOC en fichier json au format COCO