Извлечение текста из нескольких. html файлов и сохранение их в отдельных текстовых файлах - PullRequest
0 голосов
/ 22 апреля 2020

список файлов Я пытался извлечь текстовое содержимое из 24 папок, в каждой папке есть сервал (100+). HTML файлов, мне нужно создать 24 .txt файла для сохранения текста, который извлекается из . HTML файлов.

Я выполнил большую часть работы, за исключением сохранения файлов .txt, код, который я написал, сохраняет 24 файла с одинаковым содержимым, я знаю, что-то не так в следующей части

for number in range(1,25):
            with open('Text'+"%02d" % number +" .txt", "w", encoding='utf-8') as text:
                for i in passage:
                    text.write(i+' ')

Все код указан ниже

# Read files and call functions
from bs4 import BeautifulSoup
import os
import numpy as np
gap_html = os.listdir('gap-html')
print(gap_html)
# print(folder)
passage = list()
# out = "all.txt"
# def Convertfile():

for textFolders in gap_html:
    # domain = os.path.abspath(r'../gap-html')
    folder = os.path.join(os.path.abspath('gap-html'), textFolders)
    # text_folder=os.path.abspath(folder)
    # Lists the file names under all folders
    textFiles=os.listdir(folder)
    for  textFile in  textFiles :
        file=os.path.join(os.path.abspath(folder), textFile)
        print(file)
        html = open(file, 'r', encoding="utf-8").read()
        # print("Start reading file...")
        soup = BeautifulSoup(html, features='lxml')
        page = soup.find_all('span', {"class": "ocr_cinfo"})
        for word in page:
            word = word.get_text()
            passage.append(word)
        for number in range(1,25):
            with open('Text'+"%02d" % number +" .txt", "w", encoding='utf-8') as text:
                for i in passage:
                    text.write(i+' ')

...