Включить в подписку
matyushkin
13 декабря 2019 в 17:44
matyushkin
13 декабря 2019 в 10:45
+ Еще 6 тестов
КОМПАНИИ
MoscowPython
Чтобы быть в курсе, кто получит кубок мира в 2019 году, или как будет выглядеть будущее страны
в ближайшие 5 лет, приходится постоянно зависать в Интернете. Но если вы не хотите тратить MyTona
много времени на Интернет и жаждете оставаться в курсе всех событий, то эта статья для вас.
Итак, не теряя времени, начнём!
1cloud: Облачные технологии
Доступ к новейшей информации получаем двумя способами. Первый – с помощью API, который
предоставляют медиа-сайты, а второй – с помощью парсинга сайтов (Web Scraping). Библиотека программиста
Парсинг сайта
Последовательность действий
Пакеты
Для входа на веб-сайт, перехода к нужному URL-адресу в рамках одного сеанса и загрузки
HTML-содержимого будем использовать библиотеку Selenium. Selenium Python помогает при
нажатии на кнопки, вводе контента и других манипуляциях.
Погружение в код
# импорт библиотек
from selenium import webdriver
from bs4 import BeautifulSoup
Затем укажем драйверу браузера путь к Selenium, чтобы запустить наш веб-браузер (Google
Chrome). И если не хотим, чтобы наш бот отображал графический интерфейс браузера, добавим
опцию headless в Selenium.
После настройки среды путём определения браузера и установки библиотек приступаем к HTML.
Перейдём на страницу входа и найдём идентификатор, класс или имя полей для ввода адреса
электронной почты, пароля и кнопки отправки, чтобы ввести данные в структуру страницы.
Затем отправим учётные данные в эти HTML-теги, нажав кнопку «Отправить», чтобы ввести
информацию в структуру страницы.
html5lib – это пакет Python, который реализует алгоритм парсинга HTML5, на который сильно
влияют современные браузеры. Как только получили нормализованную структуру содержимого,
становится доступным поиск данных в любом дочернем элементе тега html . Искомые данные
присутствуют в теге table , поэтому ищем этот тег.
Один раз находим родительский тег, а затем рекурсивно проходим по дочерним элементам и
печатаем значения.
Если же парсим веб-сайт, который часто обновляет контент, например, результаты спортивных
соревнований или текущие результаты выборов, целесообразно создать задание cron для
запуска этой программы через конкретные интервалы времени.
Оригинал
Python
Комментарии 0
Отправить
Python 3 0 5 184484
Python 1 1 0 149762
Python 3 1 8 342438
Контакты