我使用Twitter Premium API来获取历史tweet(带有searchtweets包的Python)。
我将流导出到一个文本文件中,但我不知道如何组织和分析数据。
我想进行一个基本的内容分析。谢谢
from searchtweets import ResultStream, gen_rule_payload, load_credentials
premium_search_args = load_credentials("~/.twitter_keys.yaml",
yaml_key="search_tweets_api",
env_overwrite=False)
rule = gen_rule_payload("from:ManonMasse_Qs",
from_date="2018-08-23",
to_date="2018-10-01",
results_per_call=100)
print(rule)
rs = ResultStream(rule_payload=rule,
max_results=100,
max_pages=1,
**premium_search_args)
print(rs)
tweets = list(rs.stream())
[print(tweet.all_text) for tweet in tweets[0:10]];
with open('listfile.txt', 'w') as filehandle:
filehandle.writelines("%s\n" % place for place in tweets)
f=open("Tweets Manon.txt", "r")
contents =f.read()我尝试了下面的代码,但得到了一个NameError:
> for line in fileinput.FileInput("Tweets Manon.txt"):
> try:
> tweet_dict = json.loads(line)
> tweet = Tweet(tweet_dict)
> except (json.JSONDecodeError,NotATweetError):
> pass
> print(tweet.created_at_string, tweet.all_text)
>
> Traceback (most recent call last): File "<pyshell#54>", line 7, in <module>
> print(tweet.created_at_string, tweet.all_text) NameError: name 'tweet' is not defined发布于 2019-08-13 03:17:25
在您的代码片段中,您在try块内声明了变量tweet,因此在尝试访问try块外部的print语句中的tweet时,会出现名称错误。
发布于 2019-08-13 03:25:21
for line in fileinput.FileInput("Tweets Manon.txt"):
try:
tweet_dict = json.loads(line)
tweet = Tweet(tweet_dict)
print(tweet.created_at_string, tweet.all_text)
except (json.JSONDecodeError,NotATweetError):
passhttps://stackoverflow.com/questions/57466979
复制相似问题