【发布时间】:2020-11-02 06:18:09
【问题描述】:
我已经有了 Twitter 标准 API(我最近获得了批准,还没有使用 Twitter API),因为我需要收集历史推文。
所以我必须升级到高级 API,但我应该选择 API 沙箱在付费之前测试我的代码并升级高级 API 完整存档吗?我害怕丢失一些推文并减少请求。
我对理解一些运营商有点困惑
results_per_call=100 .. max_results=100 .. 它们是什么意思?
我可以选择任何数字来获得更多推文吗?
我每天可以使用多少个请求?
我在 python 中找到我将使用它来收集的代码?这是正确的吗?我是python的初学者
我在哪里可以找到我电脑上的 JSON 文件。?以及如何将此文件转换为 .cvs?
!pip install searchtweets
!pip install yaml
import yaml
config = dict(
search_tweets_api = dict(
account_type = 'premium',
endpoint = 'https://api.twitter.com/1.1/tweets/search/fullarchive/YOUR_LABEL.json',
consumer_key = 'YOUR_CONSUMER_KEY',
consumer_secret = 'YOUR_CONSUMER_SECRET'
))
with open('twitter_keys_fullarchive.yaml', 'w') as config_file:
yaml.dump(config, config_file, default_flow_style=False)
from searchtweets import load_credentials
premium_search_args = load_credentials("twitter_keys_fullarchive.yaml",
yaml_key="search_tweets_api",
env_overwrite=False)
print(premium_search_args)
from searchtweets import gen_rule_payload
query = "(#COVID19 OR # Corona_virus) (pandemic OR corona OR infected OR vaccine)" rule = gen_rule_payload(query, results_per_call=100, from_date="2020-01-01", to_date="2020-01-30")` from searchtweets import ResultStream
rs = ResultStream(rule_payload=rule,
max_results=100,
**premium_search_args) print(rs)
mport json
with open('twitter_premium_api_demo.jsonl', 'a', encoding='utf-8') as f:
n = 0
for tweet in rs.stream():
n += 1
if n % 10 == 0:
print('{0}: {1}'.format(str(n), tweet['created_at']))
json.dump(tweet, f)
f.write('\n') print('done')
非常感谢您。
【问题讨论】:
标签: python twitter twitterapi-python