
Вот есть небольшая проблемка с записью html кода web сайта в текстовый файл…
Программка запрашивает у пользователя url, затем спрашивает его о дальнейших действиях(функциях), одна из которых - запись html в текстовый файл
Ну вот собственно…
from urllib.request import urlopen def page(url): ''' Читает исходник из переданного аргумента(адреса) ''' return urlopen(url).read() # Вернуть исходник def printer(): ''' Выводит весь исходный код в командную строку ''' print(get_url) def record_file(): ''' Записывает исходник в файл ''' f_url = open("%s %s" % (just,".txt"), "w") # Открыть текстовый файл для записи f_url.write(get_url) # Записать в файл исходник(из get_url) f_url.close # Закрыть l_demo = [] # Создать пустой словарь while 1: # Бесконечный цикл... try: ent_url = input("Введите url адрес, в виде www.python.org...") # Запрос адреса just = ent_url # Запомнить введенный адрес в переменной just l_demo.append(ent_url) # Добавить его в словарь print(l_demo, "Минутку...") # Вывести содержимое словаря и сообщение if l_demo[0][:7] == 'http://': # Если протокол введен... get_url = page(l_demo[0]) # Передать адрес функции page() и создать объект функции print("Все верно!!!!!!!") else: fixed = "http://" + l_demo[0] # Если не введен, добавить путем создания новой переменной get_url = page(fixed) # Так же передать адрес функции page() print("Ага!..") l_demo.remove(ent_url) # Удалить адрес из словаря except: # Адрес введен неверно print("Адрес не действителен!") rec_out = input("Записать исходник в файл или вывести тут? \nВведите для выбора: R/O") if rec_out == 'R': printer() else: record_file()
Проблема в том, что при попытке записи в файл, возникает ошибка:
TypeError: must be str, not bytes
P. S.
В программе есть еще пара ошибок, а именно даже если введен неверный адрес, будут запрашиваться дальнейшие действия, но с этим я уж как-нибудь сам разберусь…
Всем спасибо за Ващи советы
