Никакой аутентификации. Нет API. Никаких ограничений.
Twint — это усовершенствованный инструмент для очистки Twitter, написанный на Python, который позволяет удалять твиты из профилей Twitter без использования API Twitter.
Twint использует операторы поиска Твиттера, чтобы вы могли собирать твиты конкретных пользователей, собирать твиты, относящиеся к определенным темам, хэштегам и тенденциям, или сортировать конфиденциальную информацию из твитов, например электронную почту и номера телефонов. Я считаю это очень полезным, и вы также можете проявить к этому творческий подход.
Twint также отправляет специальные запросы в Twitter, что позволяет вам также собирать данные о подписчиках пользователя Twitter, твитах, которые понравились пользователю, а также о том, на кого они подписаны, без какой-либо аутентификации, API, Selenium или эмуляции браузера.
Некоторые преимущества использования Twint по сравнению с Twitter API:
Может получать почти все твиты (ограничение API Twitter не превышает 3200 твитов);
Быстрая первоначальная настройка;
Можно использовать анонимно и без регистрации в Twitter;
Никаких ограничений по тарифам .
Twitter ограничивает прокрутку при просмотре временной шкалы пользователя. Это означает, что с помощью .Profile
или .Favorites
вы сможете получить около 3200 твитов.
Питон 3.6;
айоhttp;
айоднс;
красивыйсуп4;
Чардет;
классы данных
эластичный поиск;
писоки;
панды (>=0.23.0);
айоhttp_socks;
расписание;
география;
поддельный пользовательский агент;
py-googletransx.
Гит:
git клон --глубина=1 https://github.com/twintproject/twint.gitcd твинт установить pip3. -r требования.txt
Пип:
pip3 установить твинт
или
pip3 install --user --upgrade git+https://github.com/twintproject/twint.git@origin/master#egg=twint
Пипенв :
установка Pipenv git+https://github.com/twintproject/twint.git#egg=twint
Добавлено : Dockerfile.
Заметил, что у многих людей (в том числе и у меня) возникают проблемы с установкой. Пожалуйста, временно используйте Dockerfile, пока я изучаю их.
Несколько простых примеров, которые помогут вам понять основы:
twint -u username
— очистить все твиты пользователя (не включая ретвиты , но включая ответы ).
twint -u username -s pineapple
— Удалить все твиты из ленты пользователя, содержащие ананас .
twint -s pineapple
— собрать все твиты, содержащие ананас , из всех твитов.
twint -u username --year 2014
— собирать твиты, опубликованные до 2014 года.
twint -u username --since "2015-12-20 20:30:15"
— собирать твиты, опубликованные после 20 декабря 2015 г. 20:30:15.
twint -u username --since 2015-12-20
— Собрать твиты, опубликованные с 20.12.2015 00:00:00.
twint -u username -o file.txt
— очистить твиты и сохранить их в файл file.txt.
twint -u username -o file.csv --csv
— очистить твиты и сохранить их в формате CSV.
twint -u username --email --phone
— Показать твиты, в которых могут быть номера телефонов или адреса электронной почты.
twint -s "Donald Trump" --verified
— Показать твиты проверенных пользователей, которые написали в Твиттере о Дональде Трампе.
twint -g="48.880048,2.385939,1km" -o file.csv --csv
— Собирать твиты в радиусе 1 км вокруг Парижа и экспортировать их в CSV-файл.
twint -u username -es localhost:9200
— вывод твитов в Elasticsearch
twint -u username -o file.json --json
— Очистить твиты и сохранить их как файл JSON.
twint -u username --database tweets.db
— сохранить твиты в базу данных SQLite.
twint -u username --followers
— Очистить подписчиков пользователя Twitter.
twint -u username --following
— Определить, на кого подписан пользователь Twitter.
twint -u username --favorites
— собрать все твиты, которые пользователь добавил в избранное (собирается около 3200 твитов).
twint -u username --following --user-full
— собрать полную информацию о пользователе, на которого подписан человек.
twint -u username --timeline
— используйте эффективный метод для сбора твитов из профиля пользователя (собирает около 3200 твитов, включая ретвиты и ответы ).
twint -u username --retweets
— используйте быстрый метод для сбора последних 900 твитов (включая ретвиты) из профиля пользователя.
twint -u username --resume resume_file.txt
— Возобновить поиск, начиная с последнего сохраненного идентификатора прокрутки.
Более подробно о командах и опциях можно прочитать в вики.
Twint теперь можно использовать как модуль и поддерживает пользовательское форматирование. Более подробная информация находится в вики
import Twint# Configurationec = Twint.Config()c.Username = "realDonaldTrump"c.Search = "great"# Runtwint.run.Search(c)
Выход
955511208597184512 2018-01-22 18:43:19 GMT <now> pineapples are the best fruit
import Twintc = Twint.Config()c.Username = "noneprivacy"c.Custom["tweet"] = ["id"]c.Custom["user"] = ["bio"]c.Limit = 10c.Store_csv = Truec.Output = «нет»twint.run.Search(c)
Записать в файл;
CSV;
JSON;
SQLite;
Эластичный поиск.
Подробности о настройке Elasticsearch с Twint можно найти в вики.
Детали графика также находятся в вики.
Мы разрабатываем настольное приложение Twint.
Я пытался получить твиты от пользователя, я знаю, что они существуют, но не получаю их.
Twitter может осуществлять теневой бан аккаунтов, а это означает, что их твиты не будут доступны через поиск. Чтобы решить эту проблему, передайте --profile-full
если вы используете Twint через CLI, или, если используете Twint в качестве модуля, добавьте config.Profile_full = True
. Обратите внимание, что этот процесс будет довольно медленным.
Чтобы получить только имена пользователей/подписчиков/подписчиков
twint -u username --followers
twint -u username --following
Чтобы получить информацию о подписчиках/подписавшихся пользователях
twint -u username --followers --user-full
twint -u username --following --user-full
Чтобы получить только информацию о пользователе
twint -u username --user-full
Чтобы получить информацию о пользователях из списка пользователей
twint --userlist inputlist --user-full
Получить 100 твитов на английском языке и перевести их на итальянский.
twint -u noneprivacy --csv --output none.csv --lang en --translate --translate-dest it --limit 100
или
import Twintc = Twint.Config()c.Username = "noneprivacy"c.Limit = 100c.Store_csv = Truec.Output = "none.csv"c.Lang = "en"c.Translate = Truec.TranslateDest = "it" Twint.run.Search(c)
Примечания:
Google Translate имеет некоторые квоты
Как использовать Twint в качестве инструмента OSINT
Базовое руководство, созданное Null Byte
Анализ твитов с помощью НЛП за считанные минуты с помощью Spark, Optimus и Twint
Загрузка твитов в Kafka и Neo4j
Если у вас есть какие-либо вопросы, вы хотите присоединиться к обсуждению или вам нужна дополнительная помощь, вы можете присоединиться к нашему каналу, посвященному Twint, в команде OSINT.