[PYTHON] Convertir de PDF en CSV avec pdfplumber

pdfplumber

Traitez la ligne pointillée comme une ligne continue avec camelot (conversion de Huff) https://qiita.com/barobaro/items/af850ac29dbc983eb39b

Encore une fois, camelot n'est pas bon pour extraire des tables autres que des lignes pleines. Il semble qu'il puisse être facilement extrait avec pdfplumber

Impossible de convertir

Accéder au site officiel EAT Business Shiga Prefecture Les caractères ne sont pas reconnus, peuvent être extraits avec camelot

J'ai pu convertir

Liste des établissements médicaux qui fournissent des soins médicaux à l'aide de téléphones et d'équipements d'information et de communication

Liste des établissements médicaux qui fournissent des soins médicaux à l'aide de téléphones et de matériel d'information et de communication (préfecture de Hyogo)

wget https://www.mhlw.go.jp/content/000691131.pdf -O data.pdf
pip install pdfplumber
import pdfplumber
import pandas as pd

with pdfplumber.open("data.pdf") as pdf:

    dfs = []

    for page in pdf.pages:

        data = page.extract_table()
        df_tmp = pd.DataFrame(data[2:], columns=data[1])

        dfs.append(df_tmp)

df = pd.concat(dfs)

df.to_csv("hyogo.csv", encoding="utf_8_sig")

PDF de Go To EaT dans la préfecture de Chiba

https://www.chiba-gte.jp/downloads/store_list.pdf

wget https://www.chiba-gte.jp/downloads/store_list.pdf -O data.pdf
import pdfplumber
import pandas as pd

with pdfplumber.open("data.pdf") as pdf:

    dfs = []

    for page in pdf.pages:

        data = page.extract_table()
        df_tmp = pd.DataFrame(data)

        dfs.append(df_tmp)

df = pd.concat(dfs)

df1 = df.mask(df.isna() | (df == "")).dropna(thresh=4)

df2 = df1[df1[0] != "papier"].reset_index(drop=True)

df2.set_axis(["papier", "Électronique", "Nom du magasin", "adresse de rue", "TEL"], axis=1, inplace=True)

df2.index += 1

df2.to_csv("data.csv")

Recommended Posts

Convertir de PDF en CSV avec pdfplumber
Conversion de pdf en txt 2 [pyocr]
Convertir un PDF en image avec ImageMagick
Convertir des fichiers PDF en fichiers PNG avec GIMP
Convertir 202003 en 2020-03 avec les pandas
Convertir un PDF en image (JPEG / PNG) avec Python
[Python] Conversion de DICOM en PNG ou CSV
Les images créées avec matplotlib passent de dvi à pdf
[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
Écrire en csv avec Python
Convertissez rapidement SDF en CSV
Convertir la requête Select obtenue de Postgre avec Go en JSON
Convertir l'espace colorimétrique RVB en CIELAB avec PIL (Pillow)
Convertissez des images numérisées déformées en PDF avec Pillow et PyPDF
Convertir .ipynb en .html (avec BatchFile)
Convertir un PDF en documents par OCR
Convertir Markdown en PDF en Python
[Python] Ecrire dans un fichier csv avec Python
Conversion de pdf en txt 1 [pdfminer]
Sortie vers un fichier csv avec Python
Convertir la liste en DataFrame avec python
Convertir des phrases en vecteurs avec gensim
Comment convertir .mgz en .nii.gz
Convertir des fichiers écrits en python, etc. en pdf avec la coloration syntaxique
Convertir le PDF de la liste des concessionnaires de la campagne Go To Eat Hokkaido en CSV
Convertir une image au format PIL lue depuis un formulaire avec Django au format base64
[Python] Comment convertir un fichier db en csv
Convertir un mémo à la fois avec Python 2to3
Comment convertir facilement le format de Markdown
Comment convertir csv en tsv dans la CLI
[Python] Convertit les délimiteurs de fichier csv en délimiteurs de tabulation
Convertir des chaînes de caractères en quantités de caractéristiques avec RoBERTa
Convertir des données Excel en JSON avec python
Convertir Hiragana en Romaji avec Python (bêta)
Conversion de katakana en voyelle kana [python]
Extraire du texte japonais d'un PDF avec PDFMiner
Convertissez des données FX 1 minute en données 5 minutes avec Python
Convertir un PDF joint en courrier électronique au format texte
Convertir un tableau (struct) en json avec golang
[Part1] Scraping avec Python → Organisez jusqu'à csv!
Python> Numéros de sortie de 1 à 100, 501 à 600> Pour csv
Convertir des nombres chinois en nombres arabes avec Python
Convertir de Markdown en HTML en Python
Exemple de conversion en ondelettes d'images en Python
[Bases de la science des données] J'ai essayé d'enregistrer de csv à mysql avec python
Convertir le PDF des magasins disponibles de Go To EAT dans la préfecture de Kagoshima en CSV
Je souhaite convertir une table convertie en PDF en Python en CSV
Convertissez la feuille de calcul en CSV et importez-la dans Cloud Storage avec Cloud Functions
Convertir le PDF de la liste des magasins membres Go To EAT dans la préfecture de Kumamoto en CSV
Lisez le fichier CSV avec Python et convertissez-le en DataFrame tel quel
Convertir le PDF des magasins membres Go To EAT de la préfecture d'Ishikawa en CSV
Convertir le PDF d'un nouveau cas d'épidémie corona dans la préfecture d'Aichi en CSV
Prétraitement avec Python. Convertir les résultats de recherche de balises de la vidéo Nico Nico au format CSV
Comment créer des exemples de données CSV avec hypothèse
Comment lire un fichier CSV avec Python 2/3
Sortie CSV de la recherche Google avec [Python]! 【Facile】