Парсинг профилей LinkedIn с использованием Python и Selenium
Table Of Content
Примечание:
Эта статья больше не работает, пожалуйста, посетите [https://gerrysabar.medium.com/updated-scraping-linkedin-profile-using-python-tested-april-2021-10804236c22b](/updated-scraping-linkedin-profile-using-python-tested-april-2021-10804236c22b) для обновленного метода парсинга профилей LinkedIn.
В работе по парсингу, когда меняется макет, меняется и код для парсинга данных с веб-сайта. В этом случае я хотел бы поделиться, как парсить профили LinkedIn из моего случая, чтобы получить много кандидатов для рекрутера. Поиск одного за другим и составление списка является очень трудоемким процессом, поэтому Python и Selenium приходят на помощь, чтобы помочь нам составить список такого большого количества профилей.
Рабочий процесс для парсинга работы выглядит следующим образом:
Хорошо, теперь давайте создадим каталог для нашего рабочего пространства:
$ mkdir linkedin
перейдите в новый созданный каталог, затем создайте виртуальное окружение Python:
$ python3 -m venv venv
активируйте виртуальное окружение:
source venv/bin/activate
нам нужно установить selenium и parsel в нашем виртуальном окружении Python:
$ pip install selenium$ pip install parsel
вам также нужно установить chromedriver, он будет использоваться для имитации реального пользователя, просматривающего веб-браузер Chrome.
Установка Chromedriver для Ubuntu:
$ sudo apt-get update$ sudo apt-get install -y unzip xvfb libxi6 libgconf-2-4$ sudo apt-get install default-jdk
- Установка Google Chrome
$ sudo curl -sS -o - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add
sudo echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list$ sudo apt-get -y update$ sudo apt-get -y install google-chrome-stable
- Установка Chromedriver
$ wget https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip$ unzip chromedriver_linux64.zip
- Переместим chromedriver в другое место, чтобы сделать его более организованным
$ sudo mv chromedriver /usr/bin/chromedriver$ sudo chmod +x /usr/bin/chromedriver
Примечание: если вы используете систему Windows или Mac, вы можете найти информацию о том, как установить chromedriver, и запомнить, где находится ваш chromedriver (в этой статье он находится в /user/bin/chromedriver), потому что нам понадобится путь позже в нашем приложении на Python.
Теперь мы переходим к интересной части, давайте создадим файл на Python с именем linkedin.py с следующим кодом (не забудьте внести небольшие изменения):
Сразу после его выполнения, теперь вы можете получить около 10 профилей LinkedIn вместе с их подробностями в файле csv.
Заключение
Этот подход не ограничивается только случаем с Linkedin, на самом деле вы можете использовать его в различных случаях, например, для поиска самой дешевой цены на билеты на разных веб-сайтах. Вы также можете создать бота для публикации на определенном веб-сайте или для решения любой другой задачи. В этом руководстве я сделал случай как можно более простым, в реальном мире часто приходится иметь дело с более подробными профилями Linkedin, например, или не только получать доступ к первой странице результатов Google. Надеюсь, что этот статья будет полезна для вас как отправная точка для дальнейшего путешествия в мире парсинга. Удачи!