Очистка данных Twitter с помощью Python [с двумя API]
Опубликовано: 2020-11-30Оглавление
Введение
Платформы социальных сетей, такие как Twitter, являются одним из лучших хранилищ для сбора наборов данных. Работа над новым проектом по науке о данных требует достаточного количества данных, сбор набора данных — непростая задача.
А Twitter предоставляет разнообразный жанр данных, потому что это коллекция твитов от людей с разным мышлением и разными настроениями. Такой беспристрастный набор данных является крайне необходимой предпосылкой для обучения новой модели машинного обучения.
Давайте начнем!
Мы рассмотрим 2 API для очистки данных Twitter.
- Твипи
- Твинт
Твипи
Прежде чем мы начнем изучать код Python для очистки данных с помощью Tweepy API, вам нужно знать, что нам нужны учетные данные учетной записи разработчика Twitter, и это легко, если они у вас уже есть.
Для людей, у которых нет учетной записи разработчика, вы можете подать заявку здесь . И перед подачей заявки на учетную запись разработчика вам необходимо иметь учетную запись Twitter. Подача заявки на учетную запись разработчика — это простой процесс, и приложение задает несколько основных вопросов, таких как причина подачи заявки и т. Д. А утверждение учетной записи разработчика обычно занимает 2-3 дня.
Как только вы получите одобрение учетной записи разработчика, запишите свои потребительские ключи API, токен доступа и секрет токена доступа в разделе «ключи и токены».
Кроме того, следует отметить, что для tweepy существует несколько ограничений, например, вы можете очищать только твиты, которые не старше недели. И ограничение на парсинг, до 18000 твитов за 15 минут.
Отлично, теперь, когда у нас есть ключи и токены от учетной записи разработчика, давайте их авторизуем.
Consumer_key = « ваш потребительский ключ » Consumer_secret = « ваш потребительский секрет » access_token = « ваш токен доступа » access_token_secret = « секрет вашего токена » авторизация = tweepy.OAuthHandler (ключ_потребителя, секрет_потребителя) авторизация.set_access_token(access_token, access_token_secret) API = tweepy.API(авторизация,wait_on_rate_limit = True ) |
Теперь, когда мы авторизовались с нашими учетными данными, давайте очистим твиты определенной учетной записи. А пока давайте очистим твиты г-на Сундара Пичаи.
имя пользователя = ' sundarpichai ' количество = 100 попробуй : #линия 1 tweets_obj = tweepy.Cursor(api.user_timeline,id = имя пользователя).items(количество) #строка2 tweets_list = [[tweet.created_at, tweet.id, tweet.text] для твита в tweets_obj] #строка3 tweets_df = pd.DataFrame(tweets_list) кроме BaseException как e: print ( ' что- то пошло не так, ' , str (e)) |
В приведенном выше фрагменте строка1 создает итерируемый объект со всеми твитами, который назначается переменной «tweets_obj». Как только мы закончим создание итерируемого объекта, давайте переберем его и извлечем все данные.
Мы извлекаем только несколько атрибутов, таких как «created_at», «id», «text», и добавляем их к каждой записи в 2D-массиве. Где каждая запись содержит все данные каждого твита, который мы очистили. Теперь, когда у нас есть двумерный массив с атрибутами в качестве каждой записи, мы можем преобразовать его во фрейм данных, используя синтаксис «pd.DataFrame()».
Причиной преобразования массива во фрейм данных является большая гибкость, доступность предопределенных методов и легкий доступ, что выделяет его из всех структур данных для проектов по науке о данных.
Точно так же давайте пройдемся по коду для очистки данных, который имеет определенный текстовый запрос.
text_query = ' вокал для местного ' количество = 100 попробуй : #линия 1 tweets_obj = tweepy.Cursor(api.search,q = text_query).items(count) #строка2 tweets_list = [[tweet.created_at, tweet.id, tweet.text] для твита в tweets_obj] #строка3 df = pd.DataFrame(tweets_list) кроме BaseException как e: print ( ' что- то пошло не так, ' , str (e)) |
В приведенном выше фрагменте все то же самое, что и в предыдущем фрагменте. Наконец, мы создали фрейм данных со всеми твитами, содержащими текстовый запрос «вокал для местных».
Если вы ищете более конкретный или настраиваемый анализ данных, например, включение дополнительных атрибутов, таких как количество ретвитов, количество избранных и т. д., мы можем настроить наш синтаксис и извлечь другие атрибуты, предоставляемые tweepy. Для дальнейшего ознакомления с другими атрибутами, предлагаемыми tweepy, обратитесь к документации .
Твинт
Twint API не требует никаких учетных данных разработчика, вы можете легко парсить твиты без каких-либо ключей авторизации. Кроме того, у twint нет никаких ограничений, таких как количество твитов, временные рамки, лимиты очистки и т. д. Twint предоставляет вам беспрепятственный сбор данных и простой в использовании API.
Мы можем распечатать список подписчиков человека, используя его имя пользователя из API Twint.
t_obj = твинт.Конфиг() t_obj.Username = « sundarpichai » twint.run.Последователи(t_obj) |
В приведенном выше фрагменте кода twint.Config() настраивает API-интерфейс twint и запускает работу. И после назначения объекта мы можем использовать эту ссылку для нашей работы, «t_obj.Username» назначает имя пользователя, которое мы ввели. И twint.run.Followers выполняет поиск всех подписчиков с этим именем пользователя.

Мы также можем хранить очищенные данные во фрейме данных, аналогичном tweepy API.
t_obj.Limit = 100 t_obj.Username = « sundarpichai » t_obj.Pandas = Истина twint.run.Последователи(t_obj) result_df = twint.storage.panda.User_df |
Все во фрагменте почти такое же, как и в предыдущем фрагменте, только с дополнительной строкой синтаксиса «twint.storage.panda.User_df», которая преобразует очищенные данные во фрейм данных. Фрейм данных результата состоит из списка подписчиков данного имени пользователя.
Теперь, когда мы увидели очистку данных о подписчиках определенного имени пользователя, давайте рассмотрим код для очистки твитов определенной учетной записи.
t_obj.Search = « от:@sundarpichai » t_obj.Store_object = Истина t_obj.Limit = 20 twint.run.Search(t_obj) твиты = t.search_tweet_list печать (твиты) |
В приведенном выше фрагменте мы делаем настроенный объект для поиска твитов конкретного человека, мы также можем установить лимит твитов при очистке, используя синтаксис «t_obj.Limit». И после запуска поиска он создает список всех твитов, и мы можем назначить его локальной переменной в соответствии с нашими потребностями.
Увидев фрагменты извлечения информации из определенной учетной записи, у вас может возникнуть быстрый вопрос: как очищать твиты, содержащие определенное ключевое слово? Не проблема, у Twint есть решение для этого.
t_obj.Search = « наука о данных » t_obj.Store_object = Истина t_obj.Limit = 100 twint.run.Search(t_obj) твиты = t.search_tweet_list печать (твиты) |
Приведенный выше фрагмент аналогичен фрагменту для извлечения твитов из определенной учетной записи, с единственным отличием в строке 1. Мы также можем преобразовать его во фрейм данных в соответствии с нашим удобством.
Для дальнейшего чтения по Twint API загляните в их репозиторий и документацию .
Заключение
Мы поняли важность парсинга данных. Прошелся по двум API и их функциям для очистки данных Twitter. Мы рассмотрели несколько методов преобразования очищенных данных в требуемый формат файла. Теперь, когда вы знаете об этих API, начните собирать данные для своих проектов по науке о данных!
Мы в upGrad рады помочь вам, а также хотели бы сообщить вам о возможностях, которые вы можете получить, изучая Python. Python широко используется для машинного обучения и науки о данных, двух самых популярных и новых технологий. Изучение Python, а также знание этих навыков позволит вам преуспеть в своей области и получить лучшие возможности для карьерного роста.
У нас есть множество курсов, разработанных совместно с отраслевыми экспертами и ведущими академическими институтами, чтобы предоставить вам все навыки, необходимые для достижения успеха в этой области. Некоторые из курсов, которые могут помочь вам использовать свои знания в Python и увеличить ваши карьерные перспективы:
Наука о данных:
Ознакомьтесь с онлайн-программами по науке о данных upGrad, разработанными с помощью IIIT-B. Это полноценный курс по науке о данных, позволяющий войти в эту область и оставить свой след в отраслях благодаря своим знаниям.
Магистр наук в области науки о данных : разработан в сотрудничестве с Ливерпульским университетом Джона Мура и IIIT-B, получил степень магистра в области науки о данных в одном из лучших университетов мира.
Машинное обучение:
Расширенная сертификация в области машинного обучения и искусственного интеллекта : IIT madras, одно из лучших учебных заведений Индии, сотрудничает с upGrad, чтобы создать расширенный курс по машинному обучению, чтобы люди могли получить полные знания о машинном обучении с помощью этого курса.
Магистр наук в области машинного обучения и искусственного интеллекта : Ливерпульский университет Джона Мура и IIIT-B совместно с upGrad предоставили полные степени магистра наук, чтобы люди могли подробно изучить технологию и получить формальную степень в этой технологии, чтобы проложить успешную путь в этом поле.
Диплом PG в области машинного обучения и искусственного интеллекта : IIIT-B и upGrad объединились, чтобы помочь людям получить возможность пройти 12-месячный курс по машинному обучению и искусственному интеллекту и получить возможность освоить эту технологию с помощью этого курса.
Что такое парсинг данных?
Очистка данных относится к процессу, в котором компьютерное программное обеспечение очищает данные от выходных данных, созданных другой программой. Веб-скрапинг — это тип сбора данных, который используется для сбора данных или информации с разных веб-сайтов. В веб-скрапинге приложение используется для сбора ценной информации с веб-сайта. Программа очистки веб-страниц может быстро и легко получить доступ к WWW (Всемирной паутине) с помощью HTML (протокола передачи гипертекста) или веб-браузера.
Зачем нужен парсинг данных в Твиттере?
Сбор данных в социальных сетях помогает отслеживать, оценивать и анализировать данные, доступные на платформах. Twitter — самая популярная платформа, и сбор данных Twitter помогает пользователям анализировать поведение пользователей, стратегию конкуренции, анализ настроений и быть в курсе того, что происходит на самом популярном в мире социальном канале, на основе твитов людей, коллег и компаний, которые важно для вас. Служба парсинга данных Twitter обрабатывает ваши сквозные потребности в кратчайшие сроки и предоставляет вам необходимые данные. Twitter, например, позволяет поисковым роботам собирать данные только через свой API, чтобы ограничить количество информации о своих пользователях и их действиях.
Что такое API?
Интерфейсы прикладного программирования — это крошечные кусочки кода, которые позволяют цифровым устройствам, программам и серверам данных взаимодействовать друг с другом, и они являются жизненно важной основой многих служб, на которые мы в настоящее время полагаемся. API соединяет компьютеры или части программного обеспечения друг с другом, в отличие от пользовательского интерфейса, который соединяет компьютер с человеком. Он не предназначен для прямого использования кем-либо (конечным пользователем), кроме программиста, который включает его в программное обеспечение. API часто состоит из множества компонентов, которые служат программисту инструментами или услугами.