问题标签 [twarc2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 Twitter API V2 获取推文 ID 列表的所有转推的最有效方法是什么
我有一个推文 ID 列表 ( tids.csv
),我需要收集所有转推。由于我们无法在 v2 API 中直接检索特定推文的转推,因此我必须获取特定用户(我的 tid 文件中推文的用户)的所有转推,然后过滤掉我们感兴趣的特定推文的转推in. 这是我用来获取所有用户转推的命令:
其中 usernames.txt 是一个包含用户名列表的文本文件。
注意:我使用的是 v2 API,因为 v1 API 的限制是只能检索 100 条最近的转推,但我需要所有转推。
问题:
在~17 thousand unique usernames
我的输入文本文件中,我发现获取这么多用户的所有转推需要很长时间和很大的空间。例如,只为约 600 名用户收集转推需要几天时间和约 5 GB 的空间。
问题:就时间和空间而言,获得所有转发的最有效方法是什么?
上面的命令检索每个用户的所有推文的所有转推,而我只需要我的数据集 (tids.csv) 中特定推文的所有转推。
可能的解决方案:这是我想做的事情:
对于 username.txt 中的每个用户:
- 检索用户的所有转推(将开始时间和结束时间设置为我感兴趣的时间范围)
- 仅保留在文件中找到其源推文 ID 的转推,
tid.csv
并删除其余部分。这可以通过将referenced_tweets
字段中的 id 与 tid.csv 文件中的 id 匹配来完成) - 对于每个剩余的转推,只从字典中提取我想要的 json 字段。
- 将字典写入文件
有人可以帮我在 Python 中做到这一点(使用 twarc2 作为库)吗?即使有一个示例/教程开始,我也很感激..
谢谢,
twitter - 使用 twarc 时如何避免 dquote?
我正在尝试在这样的终端上使用 twarc2 获取推文。
但是,在我提出上面的请求后,我得到了
当您使用单引号和双引号时,似乎会出现这种情况。我怎样才能避免这种情况?
python - 如何使用 Twitter API Python 检查大量用户列表是否是 Twitter 上目标用户的小字典的朋友
因此,我有一个大约 6k 个用户名的列表,我需要检查这些用户名是否在关注大约 20 个名称的目标列表中的任何人。我不知道如何有效地做到这一点,因为似乎速率限制每 15 分钟限制我 15 个用户?我尝试遍历 6k 用户的每个关注者并检查是否弹出目标名称,但我很快就受到了速率限制,当我尝试使用 show_friendship() 函数时也会发生同样的事情。有没有任何后勤有效的方法来做到这一点?谢谢!
python - Twitter API 的时间线长度()
我正在尝试从特定用户那里获取所有推文:
但是,len(dict(new_tweets))
不起作用。它总是返回 0。sum(1 for dummy in new_tweets)
也返回 0。
我试过json.load(new_tweets)
了,它也不起作用。
但是,alltweets.extend(new_tweets)
工作正常。
似乎timeline()
返回了一个生成器类型的值(<generator object Twarc2._timeline at 0x000001D78B3D8B30>
)。有什么方法可以计算它的长度以确定是否还有更多未抓取的推文?
或者,有什么方法可以合并...
while
...与?成一条线
编辑:我在 while 循环之前尝试过print(list(new_tweets))
,它返回[]
. 看起来对象实际上是空的。
是因为alltweets.extend(new_tweets)
以某种方式消耗了 new_tweets 生成器......?
python - 在字符''''(位置 1)没有可行的替代方案
我正在尝试在 Jupyter 笔记本中使用 twarc 来访问 Twitter API 和存档 Twitter JSON 数据。出于某种原因,我收到一条错误消息。直接从命令提示符执行此操作时,命令执行没有问题。这是我使用的代码。
这是我收到的错误。
我将不胜感激有关如何解决此问题的任何说明。
python - 如何用 Python 为推文补水?
我想为 covid-19 推文 ID CSV 文件补充水分。我尝试关注https://theneuralblog.com/hydrating-tweet-ids/进行补水。我正在使用 Jupyter 笔记本,逐行运行。但是当我编码时出现错误:
错误消息显示:
1 t = Twarc(consumer_key,consumer_secret,access_token,access_token_secret)中的 KeyError Traceback(最近一次通话)2 t.hydrate 中的推文(打开('/Users/peggyleung95/Desktop/FYP/Untitled Folder/corona_tweets_theta.csv') ): ----> 3 打印(tweet['text']) 4 打印(tweet['id']) 5
键错误:'文本'
twitter - 如何使用 twarc 从包含许多 .txt 文件的目录中补充 Tweet Id 并将它们保存为 csv 文件(python)
我一直在使用 DocNow hydrator ( https://github.com/DocNow/hydrator ) 来为包含 Tweet ID 的 txt 文件中的推文添加水合物。现在,我在一个文件夹中有 100 多个 txt 文件,使用 hydrator 应用程序非常麻烦,因为我必须逐个文件处理这个文件。相反,我想编写一个 python 脚本来循环遍历所有的 txt 文件,对它们进行水合并将它们中的每一个保存到一个 csv 文件中。
制作一个巨大的 txt 文件是不可行的,因为我正在处理超过 10 亿条推文,而且我将无法用 excel 打开生成的 csv 文件(尽管可能有我不知道的方法),因为它太大了。
有人可以帮助我使用 twarc ( https://github.com/DocNow/twarc ) 编写这样的脚本吗?我对python很陌生,不知道该怎么做。非常感谢您!
python - 每天获得均衡数量的推文
我正在使用 twitter 客户端 twarc,它接受 aquery
和 a start_time
,end_time
并在该时间范围内获取推文。问题是,它从最近一次检索许多推文,并且在遇到条件(例如,页数或max_results
)时停止,因此结果不平衡。我将如何拥有它,以便它在一个时间范围内每天获得 X 条推文?
我可以运行一段时间而不是提前中断,但我使用的是沙盒模式,我担心我会达到限制。我能想到的唯一方法是有一个从 开始的循环,start_time
在每个循环之后添加一天,获得 X 条推文,当它到达 时end_time
,它会停止/中断。但我猜这似乎不是很有效。