0
Я хочу получить арабские данные от Twitter
, используя Python3.5
и Tweepy
.Извлечь арабские данные из Twitter
Я нахожу программу, которая очень хорошо работает с английским или французским языком. Но для арабского языка твиты декодируются. для ехра:
\ u04f \ u04e \ u043e \ u0430 \ U0430 \ u044f
Это программа:
from tweepy import Stream
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener
ConsumerKey = 'Your_Consumer_Key'
ConsumerSecret = 'Your_Consumer_Secret'
AccessToken = 'Your_Access_Token'
AccessTokenSecret = 'Your_Access_Token_Secret'
tweets = open('Tweets.txt',mode='w',encoding="utf8",newline=None)
class listener(StreamListener) :
def on_data (self , data) :
tweets.write(data)
print (data)
return True
def on_error (self , status) :
print (status)
auth = OAuthHandler (ConsumerKey , ConsumerSecret)
auth.set_access_token(AccessToken , AccessTokenSecret)
twitterStream = Stream(auth , listener())
twitterStream.filter(track=['أحوال','الطقس','2016'])
tweets.close()
Я использовал некоторые функции, но я получаю ошибки:
- data.decode() я получаю ошибка AttributeError: объект 'str' не имеет атрибута 'decode'
- и (данные) я получаю ошибку NameError: имя 'и' не определен
- дорожки = [UNICODE ('2016', 'UTF-8'), Unicode (» الطقس», 'UTF-8'), юникод ('أحوال', 'UTF-8')] Я получаю сообщение об ошибке NameError: имя 'юникода' не определен
С программой, которую вы отправили, она выглядит правильно для Python 3 (я бы сбросил 'newline = None'). Вы получили сообщение об ошибке? Например, 'print' на консоли Windows обычно ограничивает поддерживаемые символы Unicode, поэтому важно также упомянуть вашу версию Python, ОС, среду выполнения (консоль или некоторую среду IDE) и полностью отслеживать любые ошибки. –
@MarkTolonen Я нашел решение http://pastebin.com/v0QhbzS4, он должен работать :) – Asma