Перейти к содержимому

Как записать html код в файл python

  • автор:

Запись html в файл

У меня есть парсер он щелкает по вкладкам на странице поиска, нужно сделать чтоб заходя на вкладку он копировал html код из body сайты не известны,что в поиске нашел по запросу вот с первой и захожу. Нашел много всего с помощью requests и BS, но везде там под конкретную ссылку типо:

from bs4 import BeautifulSoup import requests r = requests.get("https://stackoverflow.com/questions/47503845) data = r.text soup = BeautifulSoup(data) print(soup) with open ('/tmp/test.html', 'a') as f: f.write(str(soup)) 

Отслеживать

7,797 13 13 золотых знаков 25 25 серебряных знаков 55 55 бронзовых знаков

Как правильно записать данные в html файл, используя Python?

Есть простой код, писал в vs code. Я взял уже существующую страницу HTML, сохранил ее как текст и теперь при попытке записать данные в свой HTML файл возникает проблема: вопросики вместо кириллицы. Так вот как их убрать??
Кодировка на сайте utf-8
в vs-code — тоже
Пробовал скачивать всю страницу через pywebcopy, но такой способ мне не совсем подходит

import requests url = "https://health-diet.ru/table_calorie/" req = requests.get(url) src = req.text index = open("index.html", "w") index.write(src)

649099d77c90e626217845.png

  • Вопрос задан 19 июн. 2023
  • 202 просмотра

Python-сообщество

[RSS Feed]

  • Начало
  • » Python для новичков
  • » Запись html в файл

#1 Май 2, 2012 17:11:06

zipsetic Зарегистрирован: 2012-04-04 Сообщения: 29 Репутация: 1 Профиль Отправить e-mail

Запись html в файл

Здравствуйте!

Вот есть небольшая проблемка с записью 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.
В программе есть еще пара ошибок, а именно даже если введен неверный адрес, будут запрашиваться дальнейшие действия, но с этим я уж как-нибудь сам разберусь…

Всем спасибо за Ващи советы

Открыть HTML в Python SDK

Используйте REST API для программного открытия и чтения HTML файлов на Python.

Легко открывайте HTML документы всего несколькими строками Python кода. Наша Python библиотека предоставит вам все необходимое для программного доступа к содержимому HTML документа.

Посмотреть фрагмент кода

Открыть HTML файл на Python

Задача чтения HTML документов — это задача чтения иерархических структур данных в модели DOM. Это подразумевает знание формата каждого отдельного элемента HTML данных, включая все его возможные дочерние элементы и атрибуты.

Наша Python библиотека — это облачное решение, которое позволит вам легко открывать HTML файлы для чтения и записи. Такой распределенный подход дает гибкость при разработке ПО с использованием языка Python, поскольку вся ресурсоемкая обработка HTML документов будет выполняться на серверах Aspose. Все, что вам нужно, это получить закрытые ключи для доступа к Cloud API в коде Python.

Прочитать HTML документ на Python

Вы можете выполнить итерацию по всем элементам HTML документа или выполнить поиск определенных элементов в дереве DOM. Мы предоставляем широкий набор функций Python как для работы со структурой HTML файла, так и с данными, содержащимися в узлах документа.

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

Открыть HTML файл, используя Python

Справочник по API

Попробуйте наш Cloud API в своем программном обеспечении Python уже сегодня!

API предоставляет вам надежные функции промышленного уровня и полную интеграцию с кодом Python.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *