Привет всем, этот небольшой фрагмент покажет вам, как использовать selenium lib для автоматического парсинга веб-страниц, который вы можете использовать для анализа данных, поиска шаблонов и т. д.

Этот фрагмент является первым из многих других, каждый из них покажет вам следующий шаг, этот показывает автоматическое соединение на веб-странице, в данном случае facebook, следующий покажет вам, как очистить веб-страницу с помощью красивого мыла. , после мы загрузим данные и сохраним их в базе данных и так далее.

Согласно документации, пакет selenium используется для автоматизации взаимодействия веб-браузера с Python и используется для выполнения автоматических тестов.

Вы можете найти более подробную информацию в https://pypi.org/project/selenium/

Поддерживаются несколько браузеров / драйверов (Firefox, Chrome, Internet Explorer), а также протокол Remote.

Поддержка версий Python: Python 2.7, 3.4+

Для установки вы можете использовать один из трех вариантов:

используя pip:

pip install -U selenium

Вы можете загрузить исходный код из PyPI (например, selenium-3.14.0.tar.gz), разархивировать его и запустить:

установка python setup.py

Наконец, если вы используете Anaconda:

conda install -c conda-forge selenium

Первое, что нам нужно сделать, это импортировать библиотеки, которые мы будем использовать в этом фрагменте.

В этом случае для этого первого шага наиболее важным является селен, на котором мы будем выполнять автоматическое соединение.

In [38]:

from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
from datetime import datetime, timedelta
from selenium import webdriver
import time

После импорта библиотек, чтобы запустить код, нам нужно выбрать правильный драйвер для использования в.

Selenium требует наличия драйвера для взаимодействия с выбранным браузером.

Здесь мы будем использовать Chromium, но можно использовать и многие другие.

вы можете найти драйвер здесь:

https://sites.google.com/a/chromium.org/chromedriver/downloads

вы можете найти более подробную информацию на странице проекта Selenium.

Когда установлен драйвер Chrome, нам нужно установить некоторые параметры, чтобы запустить его.

In [39]:

options = webdriver.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument("--test-type")
options.binary_location = "Your drive:\Your directory\chromedriver.exe"
driver = webdriver.Chrome("Your drive:\Your directory\chromedriver.exe")

Следующий шаг - установить URL-адрес, который мы будем использовать, и получить его с драйвером.

In [40]:

my_url = 'https://www.facebook.com/'

In [41]:

driver.get(my_url)

В нашем случае у нас есть форма, которую нужно заполнить, чтобы получить доступ к веб-странице, поэтому нам нужно получить идентификаторы html из соответствующих полей. Их легко найти с помощью таких методов драйвера, как find-element_by_id или find_elements_by_xpath.

In [42]:

login = driver.find_element_by_id('email');      
senha = driver.find_element_by_id('pass');

In [43]:

login.send_keys('your user')
senha.send_keys('your password')

In [46]:

submit_button = driver.find_elements_by_xpath('//*[@id="loginbutton"]')[0];

In [ ]:

Now is just submit the information using the click method and <i>voilà</i>, we're in.

In [47]:

submit_button.click()

В следующих темах мы узнаем, как получать данные с помощью красивого мыла, хранить их в базе данных и анализировать с помощью некоторых инструментов, таких как pandas, matplotlib, sklearn и т. Д.

Наслаждайтесь кодом, улучшайте его, если хотите!

Увидимся!!!!