Je veux lire Une grande quantité de fichiers pdf anglais, mais je ne comprends pas les mots anglais en premier lieu. Pour l'instant, convertissez le fichier pdf en fichier texte, listez les mots et mémorisez les mots fréquemment utilisés dans l'ordre du haut. Je suis sûr que vous pouvez le lire plus rapidement! J'ai décidé de croire.
C'est pourquoi j'ai décidé de mettre beaucoup de fichiers pdf anglais dans une casserole, de les faire bouillir et de les convertir en fichiers texte. J'ai envie de faire bouillir une grande quantité de soba pour le tournoi de bowl soba.
macOS Python3.6 anaconda
Un grand nombre de fichiers pdf difficiles à digérer
pdfminer ← Vérifiez l'URL de référence à la fin de la méthode d'installation os re
Il semble que pdfminer donne de meilleurs résultats que PyPDF2.
Veuillez noter qu'il ne correspond pas (probablement) aux phrases japonaises.
PdfToTextConverter.py
#! python3
# PdfToTextConverter.py
#Lire le contenu d'un fichier PDF et le sortir sous forme de fichier texte
import os
import re
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
pdf_folder_path = os.getcwd() #Obtenez le chemin du dossier actuel
text_folder_path = os.getcwd() + '/' + 'text_folder' #La notation du chemin est la spécification mac. Pour les fenêtres,'/'À'\'Correct à.
os.makedirs(text_folder_path, exist_ok=True)
pdf_file_name = os.listdir(pdf_folder_path)
#nom est un fichier PDF (se termine.pdf) renvoie TRUE, sinon FALSE est renvoyé.
#Ce message a été cité et partiellement modifié → http://qiita.com/korkewriya/items/72de38fc506ab37b4f2d
def pdf_checker(name):
pdf_regex = re.compile(r'.+\.pdf')
if pdf_regex.search(str(name)):
return True
else:
return False
#Convertir un PDF en fichier texte
def convert_pdf_to_txt(path, txtname, buf=True):
rsrcmgr = PDFResourceManager()
if buf:
outfp = StringIO()
else:
outfp = file(txtname, 'w')
codec = 'utf-8'
laparams = LAParams()
laparams.detect_vertical = True
device = TextConverter(rsrcmgr, outfp, codec=codec, laparams=laparams)
fp = open(path, 'rb')
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.get_pages(fp):
interpreter.process_page(page)
fp.close()
device.close()
if buf:
text = outfp.getvalue()
make_new_text_file = open(text_folder_path + '/' + path + '.txt', 'w')
make_new_text_file.write(text)
make_new_text_file.close()
outfp.close()
#Obtenez le nom du fichier pdf dans le dossier et listez-le
for name in pdf_file_name:
if pdf_checker(name):
convert_pdf_to_txt(name, name + '.txt') # pdf_Utilisez checker et TRUE (se termine.Pour pdf) procéder à la conversion)
else:
pass #Passer sinon un fichier PDF
Un grand nombre de fichiers texte susceptibles de provoquer des maux d'estomac
Déplacez un grand nombre de fichiers texte dans un bol et extrayez environ 500 mots fréquemment utilisés. Rappelez-vous la signification du mot (on ne sait pas s'il est efficace pour lire rapidement des phrases en anglais)
http://qiita.com/korkewriya/items/72de38fc506ab37b4f2d → La partie qui convertit un fichier pdf en fichier texte est citée (partiellement modifiée) de cet article.
https://kusanohitoshi.blogspot.jp/2017/01/python3cstringiostringio.html → Reportez-vous ici pour savoir comment gérer les erreurs d'importation StringIO.
"Laisse Python faire les choses ennuyeuses" → Comment utiliser le module os
http://www.unixuser.org/%7Eeuske/python/pdfminer/index.html → page pdfminer
https://github.com/conda-forge/pdfminer-feedstock https://conda-forge.org/feedstocks → Reportez-vous ici pour la procédure d'installation de pdfminer dans l'environnement anaconda.
Recommended Posts