CoderCastrov logo
CoderCastrov
Парсер

Как парсить твиты с помощью Twint в Python

Как парсить твиты с помощью Twint в Python
просмотров
3 мин чтение
#Парсер

Twint - это продвинутый инструмент для парсинга Twitter, написанный на Python, который позволяет парсить твиты с Twitter.

twintproject/twint

Без аутентификации. Без API. Без ограничений. Twint - это продвинутый инструмент для парсинга Twitter, написанный на Python, который позволяет:

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

Некоторые преимущества использования Twint:

  • Может получать почти все твиты (Twitter API ограничивает только последние 3200 твитов);
  • Быстрая начальная настройка;
  • Может использоваться анонимно и без регистрации в Twitter;
  • Нет ограничений на скорость.

Предварительные требования

  • python 3.6
  • Twint 2.1.19
  • venv (Virtual Environment)

Создание виртуальной среды (VENV)

В вашем терминале или командной строке введите эту команду:

  • Windows
py -m  venv
  • Linux
python -m venv venv

Чтобы активировать вашу venv, введите эту команду в вашей командной строке или терминале Linux:

#Windows
    .\venv\Scripts\activate.bat#Linux
    source venv/bin/activate

Установка Twint

В вашем виртуальном окружении установите Twint, введя следующую команду в терминале.

pip install twint

Подождите некоторое время, пока процесс установки не завершится, и готово, теперь у вас уже установлен Twint в вашем виртуальном окружении.

!! убедитесь, что вы устанавливаете его в своем виртуальном окружении

Создание программы парсера

Для использования Twint мы будем использовать язык python. После установки Twint вам потребуется импортировать Twint.

import twint

Хорошо, для примера мы создадим программу для парсинга твитов, запрашивая слово "bitcoin" для получения 10 твитов.

import twint#конфигурация
config = twint.Config()
config.Search = "bitcoin"
config.Limit = 10#запуск поиска
twint.run.Search(config)

Программа будет запрашивать только твиты с словом "bitcoin" и получать не более 10 последних твитов. Чтобы создать более сложную команду, вы можете добавить несколько дополнительных настроек. Так что я собираюсь запросить слово "bitcoin" для получения 100 твитов с "2019–04–29" по "2020–04–29" на английском языке и сохранить вывод в файле формата json.

import twint#конфигурация
config = twint.Config()
config.Search = "bitcoin"
config.Lang = "en"
config.Limit = 100
config.Since = "2019–04–29"
config.Until = "2020–04–29"
config.Store_json = True
config.Output = "custom_out.json"#запуск поиска
twint.run.Search(config)

Так что для чего предназначена вышеуказанная программа, я объясню по порядку:

  • Search = здесь вы заполняете запрос, который хотите найти
  • Lang = вы можете указать язык твитов, которые хотите спарсить, для кода языка вы можете посмотреть здесь
  • Limit = ограничивает количество спарсенных твитов
  • Since = задает конкретное время для даты твита, который будет спарсен. Если лимит еще не достигнут, но достигнуто это время, то парсинг завершится.
  • Until = аналогично "Since", но команда "Until" используется для задания времени начала парсинга. Twint начинает парсить с самого большого времени до самого маленького. Еще один пример использования: "2020–01–18 15:51:31".
  • Store_json = вы можете сохранить вывод данных в виде файлов json, значение может быть True или False, также вы можете сохранить его в формате CSV, изменив его на "Store_csv".
  • Output = сохраняет вывод данных под определенным именем или в директории.

Есть еще много возможностей для поиска внутри Twint. Для других настроек вы можете проверить следующую страницу:

Заключительные замечания

Спасибо за то, что дочитали этот учебник до конца. Надеюсь, этот статья поможет вам, увидимся в следующей статье.


twintproject/twint

twintproject/twint

Описание типов переменных -------------------------------------------- Username (строка) - имя пользователя Twitter...

github.com