@Herr_Konrad

Как принять html файл в python?

Здравствуйте! Имеется ввод типа

python test.py test.htm

Вопрос заключается в том, как правильно принять данный html файл что бы его потом обработать?
Я реализовал этот алгоритм при помощи with:

with open("test.html", "r") as f:

    test = f.read()
    soup = BeautifulSoup(test, 'lxml')


Но этот пример работает при запуске python test.py, а нужно получить html файл именно из input.
  • Вопрос задан
  • 93 просмотра
Решения вопроса 2
@galaxy
Ответ написан
Комментировать
SoreMix
@SoreMix Куратор тега Python
yellow
именно из input

Из аргументов что ли?

import sys

args = sys.argv

if len(args) > 1:
    html_doc = args[1]
else:
    html_doc = None

print(html_doc)


Развернутый код, чтобы было понятно, что происходит. Можно сжать в строку:
html_doc = None if len(sys.argv) < 2 else sys.argv[1]


Если аргументов нет - все равно список sys.argv будет содержать в себе один элемент - имя файла, так что нужно проверять длину списка.

Для большого кол-ва аргументов понадобится argparse
https://docs.python.org/3/library/argparse.html
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы