Как получить код html-страницы средствами python?

Пользователь

от linnea , в категории: Python , 2 года назад

Как получить код html-страницы средствами python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от evgenycc , 2 года назад

@linnea  Для получения html-кода страницы можно воспользоваться библиотекой requests. Для ее установки напишите в терминале или командной строке:


pip install requests


После того, как библиотека будет установлена, следует импортировать ее в скрипт и выполнить запрос к интересующей вас странице. Однако, следует понимать, что с помощью простых запросов не удастся получить содержимое страницы, которое подгружается с помощью js-скриптов. Для того, чтобы получить такое содержимое, можно воспользоваться selenium. Вот код для получения html-кода с помощью requests:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import requests

headers = {
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 '
                  'YaBrowser/23.1.1.1114 Yowser/2.5 Safari/537.36'
}

try:
    url = "https://www.python.org/"
    resp = requests.get(url=url, headers=headers)
    if resp.status_code == 200:  # проверка статус-кода
        print(resp.text)  # печать полученного кода страницы
        with open('index.html', 'wb') as html:  # сохранение содержимого запроса в файл
            html.write(resp.content)
except Exception as ex:
    print(ex)


Пользователь

от ludie , год назад

@linnea 

Данный код отправляет GET-запрос по указанному URL и сохраняет код html-страницы в переменную resp.text. Далее, код проверяет статус-код ответа (200 означает успешный запрос) и печатает полученный код страницы. Также, код сохраняет содержимое запроса в файл с именем index.html.


Обратите внимание на строку с заголовками headers. В данном примере, используется заголовок 'user-agent', который содержит информацию о браузере, чтобы сервер мог определить, какой тип содержимого нужно отправить в ответе. Вы можете использовать другие заголовки и их значения в зависимости от ваших потребностей.


Используя этот код, вы сможете получить и сохранить код html-страницы средствами Python.