Как открыть несколько. html файлов И удалить теги с помощью Python (pyCharm) - PullRequest
0 голосов
/ 20 марта 2020

В настоящее время я работаю над проектом в Python, где мне нужно написать программу, которая удаляет все теги из файла HTML (поэтому остается только текст), но мне нужно сделать это около 1000 HTML файлов.

Это код, который я использовал для удаления тегов:



with open('/inetpub/wwwroot/content/html/eng/0320-0130.htm') as html_file:
    source = html_file.read()
    html = HTML (html = source)



print(html.text)

&

Этот код открывает им несколько файлов HTML:

import glob
path = '/inetpub/wwwroot/content/html/eng/*.htm'
files=glob.glob(path)
for file in files:
    f=open(file, 'r')
    print('%s' % f.readlines())
    f.close()

Я не знаю, как объединить эти коды или какой код мне нужен для такой комбинации. Есть предложения?

1 Ответ

0 голосов
/ 20 марта 2020

Может быть, вы запутались из-за контекста with, использованного в первой, но объединить эти две программы довольно просто

import glob


def get_html_text(html_file):
    source = html_file.read()
    html = HTML(html=source)
    return html.text


path = '/inetpub/wwwroot/content/html/eng/*.htm'
files = glob.glob(path)
html_texts = []
for file in files:
    f = open(file, 'r')
    html_texts.append(get_html_text(f))
    f.close()
print(len(html_texts))
# print(html_text) # this may lay huge print to your screen if you have many files

Контекст with все, что он должен был сделать в вашем примере выше Программа заключается в том, что она определяет действие входа и выхода, то есть при вводе этого фрагмента кода в контексте with вы открываете файл, а при выходе из него файл закрывается. Вам это не нужно, поскольку вы уже закрываете файл вручную во второй программе, вызывающей первую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...