我正在尝试使用Python并使用它来分析阿拉伯语推文......
我发现许多在线脚本一切正常,直到我尝试读取阿拉伯语json转储文件。
import json
import codecs
from tweepy import Cursor
from twitterclient import get_twitter_client
if __name__ == '__main__':
client = get_twitter_client()
with codecs.open('arabic.csv', 'w', encoding ='utf-8') as f:
for page in Cursor(client.home_timeline, count = 200).pages(1):
for status in page:
f.write(json.dumps(status._json)+"\n")
我尝试了所有可能的解决方案,添加编码,使用utf-8-sig进行编码和解码
但我仍然把它作为输出
"text": "RT @RTarabic_Bn: \u0645\u0628\u0627\u0634\u0631.. \u0627\u0644\u0634\u0631\u0637\u0629 \u0627\u0644\u0628\u0644\u062c\u064a\u0643\u064a\u0629 \u062a\u0637\u0648\u0642 \u0645\u0646\u0637\u0642\u0629 \u0633\u0643\u0646\u064a\u0629 \u0641\u064a \u0628\u0631\u0648\u0643\u0633\u064a\u0644 \u0644\u0644\u0627\u0634\u062a\u0628\u0627\u0647 \u0628\u0648\u062c\u0648\u062f \u0645\u0633\u0644\u062d\u064a\u0646 "
我的目的是收集阿拉伯语推文并将其保存到json文件或csv文件中,以便以后分析它...
编辑1:
为了将来参考以防有人遇到同样的问题,它看起来像是python如何写数据问题。所以对于python而言,它不是一个问题,因为它的写作角色。 我仍然难以用阿拉伯语转储输出。但我终于找到了至少阅读它的方法。 打开文件时,请确保使用此
with open(fname, 'rb') as f:
如果您将其视为字节,您将能够以原始语言处理它,尝试pringing并且它可以正常工作>
答案 0 :(得分:0)
twitter返回有关推文语言的信息,检查' lang' 参数,并通过响应[' lang'] ==&过滤推文#39; ar' ,其中' ar' 表示阿拉伯语
答案 1 :(得分:0)
包括lang参数。例如,对于僧伽罗语,代码如下所示。
import tweepy
# Twitter API credentials
consumer_key = "XXXXXXXXX"
consumer_secret = "XXXXXXXXXX"
access_key = "XXXXXXXXXXXXX"
access_secret = "XXXXXXXXXXXXX"
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)
for tweet in tweepy.Cursor(api.search,
q='තම්බි
rpp=100,
include_entities=True,
lang="si").items():
print (tweet.created_at, tweet.text)