То оригинальная статья можно найти в kalebujordan.com
Привет ребята,
В этом уроке я направляю вас о том, как выполнить анализ настроений на текстовые данные, которые выбираются непосредственно из Twitter о конкретном вопросе, используя Tweepy и TextBlob Отказ
Что такое анализ настроения?
Анализ настроений – это процесс анализа эмоций, связанных с текстовыми данными с использованием технологий обработки натурального языка и методах обучения машин.
Если вы новичок …
Если вы новичок в анализе настроений в Python, я бы порекомендовал вам посмотреть Обнаружение эмоций от текста Во-первых, прежде чем продолжить это руководство.
Что мы собираемся построить ..
Мы собираемся построить инструмент/скрипт/скрипт/скрипт командной линии Python для выполнения анализа настроения в Twitter на основе указанной темы.
Как это будет работать?
Вы просто войдете в тему интереса для изучения в Twitter, а затем скрипт погрузится в Twitter, Tweets, связанные с ломами, выполняют анализ настроений на них, а затем распечатать сводку анализа.
Требования к проекту
Следовать по учебнику, вам нужно следующее
- Подпишитесь на Twitter для разработчиков, чтобы получить ключ API
- Установить Tweepy Библиотека (функциональные возможности Twitter)
- Установить TextBlob Библиотека (обработка натурального языка)
Разработчик Twitter (ключи API)
Вы можете выполнить эту ссылку Регистрация Для регистрации учетной записи Developer Twitter получите ключ API.
После регистрации для учетной записи разработчика и подать заявку на API Twitter, это может потребоваться всего несколько часов до нескольких дней, чтобы получить одобрение.
После утверждения Перейдите в ваше приложение на странице «Ключи и токены» и скопируйте свой секретный ключ API_KEY и API в форме, как показано на рисунке ниже.
Tweepy установка
Самый простой способ установить последнюю версию из Pypi Используя PIP:
$ pip install tweepy
Вы также можете использовать Git, чтобы клонировать репозиторий из GitHub, чтобы установить последнюю версию разработки:
$ git clone https://github.com/tweepy/tweepy.git $ cd tweepy $ pip install .
Установка TextBlob
$ pip install -U textblob $ python -m textblob.download_corpora
Создание нашего инструмента анализа Twitter
Теперь после того, как все ясно установлено, давайте грязным рукой, кодируя наш инструмент с нуля.
Поместите API_Keys в отдельный файл
Прежде всего, я разлучил проект в два файла, что состоит из ключей API, в то время как другие, состоящие из нашего кода для сценария.
. ├── API_KEYS.py └── app.py 0 directories, 2 files
Если мы заглянем внутрь api_keys.py, это выглядит как показано ниже, в результате чего значение api_key и api_secret_key будет заменено вашими учетными данными, полученными из Twitter
- API_KEYS.py
api_key = 'your api key' api_secret_key = 'your api secret key'
Теперь давайте начнем кодировать наш скрипт
Импорт библиотек и зависимостей
from tweepy import API, OAuthHandler from textblob import TextBlob from API_KEYS import api_key, api_secret_key
Аутентифицировать наш скрипт
Чтобы начать получать твиты из Twitter, во-первых, мы должны аутентифицировать наше приложение, используя API ключ и Секретный ключ Отказ
Аутентифицировать наш API, мы будем использовать OauthHandler как показано ниже
authentication = OAuthHandler(api_key, api_secret_key) api = API(authentication)
Получение твитов по конкретной теме
Чтобы получить твиты из Twitter, используя наш аутентифицированный API, используйте Поиск метод извлекает твиты о конкретном матте, как показано ниже;
public_tweets = api.search(Topic)
public_tweets нерешительна для объектов твитов, но для того, чтобы выполнить анализ настроения, нам требуется только текст Tweet.
Поэтому для того, чтобы получить доступ к тексту на каждом Tweet, мы должны использовать свойство Text на Tweet Object Так же, как показано в примере ниже.
from tweepy import API, OAuthHandler from textblob import TextBlob from API_KEYS import api_key, api_secre authentication = OAuthHandler(api_key, api_secret_key) api = API(authentication) corona_tweets = api.search('corona virus') for tweet in corona_tweets: text = tweet.text print(text)
Когда вы запустите вышеуказанный скрипт, он будет производить результат, аналогичный ниже.
$ python example.py ...... RT @amyklobuchar: So on Frontier Airlines you now have to pay an extra fee to keep yourself safe from corona virus. As I said today at the... There are so many disturbing news these days ON TOP OF CORONA VIRUS. It just sinks my heart We all need therapy. RT @ug_chelsea: Corona virus symptoms basically are the same feelings you get when your wife is checking your phone
Выполнение анализа настроений
Теперь давайте будем использовать TextBlob выполнить анализ настроений на эти твиты, чтобы проверить, если они положительный или отрицательный Отказ
Синтаксис TextBlob для проверки позитивности или негатива
polarity = TextBlob(Text).sentiment.polarity
Если полярность меньше 0 Это отрицательно
Если полярность больше 0 Это положительно
Окончательное применение
Затем я скомпилировал вышеупомянутые знания, которые мы просто научились создавать следующий скрипт с добавлением функции Clean_Tweets для удаления хэштег в твитах
from tweepy import API, OAuthHandler from textblob import TextBlob from API_KEYS import api_key, api_secret_key def clean_tweets(tweet): tweet_words = str(tweet).split(' ') clean_words = [word for word in tweet_words if not word.startswith('#')] return ' '.join(clean_words) def analyze(Topic): positive_tweets, negative_tweets = [], [] authentication = OAuthHandler(api_key, api_secret_key) api = API(authentication) public_tweets = api.search(Topic, count=10) cleaned_tweets = [clean_tweets(tweet.text) for tweet in public_tweets] for tweet in cleaned_tweets: tweet_polarity = TextBlob(tweet).sentiment.polarity if tweet_polarity<0: negative_tweets.append(tweet) continue positive_tweets.append(tweet) return positive_tweets, negative_tweets positive, negative = analyze('Magufuli') print(positive , '\n\n', negative) print(len(positive), ' VS ', len(negative))
Чтобы изменить тему, которую вы хотите проанализировать или изменить тему параметр в Анализировать функцию к теме вашего интереса.
Кроме того, вы можете указать количество твитов, которые можно получить из Twitter, изменив параметр Count.
Когда вы запустите вышеуказанное приложение, он будет производить результаты к тому, что показано ниже
python app.py ..................... ['@o_abuga Obvious, the test kits the results are doubtful!! Magufuli said it'] 9 VS 1
🎉🎉. 🎉 Поздравления Вы только что завершили учебник по анализу настроений Twitter, используя Python, вы должны гордиться собой, Чирикать сейчас Поделиться этими хорошими новостями с вашими собратьями.
Я также рекомендую вам прочитать это;
- Как переводить языки с помощью Python
- Обнаружение эмоций от текста в Python
- 3 способа преобразовать текст в речь в Python
- Как выполнить признание речи в Python
- Сделайте свой собственный детектор плагиата в Python
- Узнайте, как создать свой собственный спам-фильтр в Python
- Сделайте свои собственные знания в Python
- Как выполнить автоматическую коррекцию правописания в Python
Kalebu/Twitter-rediament-Analysis-Python
Это руководство обеспечивает краткое введение в выполнение анализа настроений в данных Twitter, используя Tweepy Library и TextBlob
Это руководство обеспечивает краткое введение в выполнение анализа настроений в данных Twitter, используя Tweepy Library и TextBlob
Оригинал: “https://dev.to/kalebu/a-quick-guide-to-twitter-sentiment-analysis-in-python-55dh”