Я учу себя основам работы с потоками в Python и застрял.Я хочу, чтобы скрипт применил функцию к списку PDF-файлов.Предполагается, что эта функция просто подсчитывает количество таблиц в каждом файле PDF, а затем возвращает объединенный список того, сколько таблиц имеет каждый файл.
В настоящее время я получаю сообщение об ошибке, утверждающее, что мой «формат файлане поддерживается".Насколько я могу судить, каждый путь в списке - это полный путь, который заканчивается на .pdf.Я не знаю, что я делаю неправильно?
Я сократил код до основных моментов и включил свой код ниже
import camelot
from multiprocessing.dummy import Pool as ThreadPool
import glob
import os
#get a list of all the pdf paths in the directory I am interested in
pdfs = [os.path.abspath(x) for x in os.listdir(r'C:\Users\josiahh\Desktop\threading_learning')]
#format each path to have the r letter in front of it
rpdfs = ["r'" + pdf + "'" for pdf in pdfs]
#function that counts each table in the pdf. THIS IS WHERE SOMETHING IS WRONG...I THINK
listoflengths = []
def len_table5(filepath):
tables = camelot.read_pdf(filepath, pages = '1-end',flavor='stream')
tablelength = len(tables)
listoflengths.append(tablelength)
#threading code
pool = ThreadPool(5)
results = pool.map(len_table5, rpdfs)
pool.close()
pool.join()
Любая помощь будет принята с благодарностью.Пожалуйста, дайте мне знать, если я смогу что-то уточнить*