gpt4 book ai didi

java - 如何从用户那里获取 150k 关注者ID?

转载 作者:行者123 更新时间:2023-12-01 15:23:20 24 4
gpt4 key购买 nike

我正在尝试从拥有大约 150.000 名关注者的 Twitter 帐户中获取所有关注者 ID。我稍后想要绘制他们的位置,但首先我需要所有这些 ID。

目前我正在使用这段代码:

long lCursorIDs = -1;
long[] fArray = new long[100];

do
{
fArray = twitter.getFollowersIDs(name, lCursorIDs).getIDs();
} while (twitter.getFollowersIDs(name, lCursorIDs).hasNext ());

try
{
PrintWriter pr = new PrintWriter(filenameOutput);

for (int i=0; i<fArray.length ; i++)
{
pr.println(fArray[i]);
}
pr.close();
System.out.println("Follower IDs collected and saved to file: " + filenameOutput );
}
catch (Exception e)
{
e.printStackTrace();
System.out.println("No such file exists.");
}

这适用于关注者较少的用户。但对于这么多它总是返回一条错误消息 - 超出了速率限制。我正在考虑每小时只获取一定数量的 followerID,但我不知道如何做到这一点,而不是从第一个关注者开始每个小时。另外,我不确定一个请求可以吸引多少关注者。也许是 100,就像“lookupUser”方法一样,但我不确定..有什么想法/建议吗?

编辑:好的,我只是尝试获取拥有 2700 个关注者的帐户的关注者 ID,并将它们正确存储在文本文件中。它也只“花费”一个请求。我将帐户名称更改为拥有 15500 名关注者的帐户,但它再次崩溃,并显示超出速率限制的消息。我不明白为什么,因为它的关注者数量大约只有 6 倍,但所有剩余的请求都会被花费.. 关于我做错了什么有什么想法吗?

最佳答案

答案:

 int numberOfFollowers; 
numberOfFollowers = user.getFollowersCount();

//CREATE ARRAYS FOR FOLLOWER IDS
long cursor = -1;
long[] fArray = new long[numberOfFollowers];
long[] local = new long[5000];


IDs ids = twitter.getFollowersIDs(name, cursor);
int j = 0;

int x = 5000;
int durchgang = 1;
int d_anzahl = 1 + numberOfFollowers / 5000;
//STROE FOLLOWER IDS IN ARRAYS
do
{
ids = twitter.getFollowersIDs(name, cursor);
local = twitter.getFollowersIDs(name, cursor).getIDs();
System.out.println("Durchgang: " + durchgang + " / " + d_anzahl );
System.arraycopy(local, 0, fArray, j * x , local.length);
j++;
durchgang++;

cursor = ids.getNextCursor();
} while (ids.hasNext());

这会获取一个包含任何 Twitter 用户的所有关注者 ID 的数组。它计算获取所有关注者 ID 所需的循环次数,并将每个包含 5000 个 ID 的数组复制到末尾包含所有 ID 的新数组中。

关于java - 如何从用户那里获取 150k 关注者ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10540578/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com