Код Python для загрузки и объединения pdf-файлов в цикле приводит к конечному файлу размером 1 КБ
Всем привет.
У меня есть сайт, с которого мне нужно получить ~1000 PDF-файлов. PDF-файлы отличаются четырехзначным числом в диапазоне 1101-2300, например
https://intvd.gib.gov.tr/2014_Emlak_Arsa/EmlakServlet?tip=9& ilKodu=3& ilceKodu=1101
Однако некоторые числа между диапазонами не назначены pdf-файлу, поэтому мне нужно было что-то, что было бы
1-) скачать все файлы
2 -) Удалите PDF-файлы размером 1 КБ (это не назначенные файлы)
3 -) объединить все pdf-файлы в один pdf-файл
Были ответы на каждый из этих шагов, но не вместе, поэтому я посмотрел на них и сделал что-то. Однако в конце концов все, что я получаю, - это pdf-файл размером 1 КБ под названием merged_full. pdf
Что я делаю не так?
Овации
Что я уже пробовал:
import urllib.request import os from PyPDF2 import PdfFileReader, PdfFileMerger os.chdir('the_directory') mylist=(list(range(1101,2500))) for i in mylist: def download_file(download_url): web_file = urllib.request.urlopen('https://intvd.gib.gov.tr/2014_Emlak_Arsa/EmlakServlet?tip=9&ilKodu=3&ilceKodu=%d'%(i),'%d.pdf'%(i)) local_file = open('%d.pdf'%(i), 'wb') local_file.write(web_file.read()) web_file.close() local_file.close() filesize = os.path.getsize('%d.pdf'%(i)) if filesize<1024: os.remove('%d.pdf'%(i)) del filesize files_dir = "the_directory" pdf_files = [f for f in os.listdir(files_dir) if f.endswith("pdf")] merger = PdfFileMerger() for filename in pdf_files: merger.append(PdfFileReader(os.path.join(files_dir, filename), "rb")) merger.write(os.path.join(files_dir, "merged_full.pdf"))