Asked May 14th, 2023 4:41 p.m. 179 0 1
  • 179 0 1
0

Hỏi về cách xử lý dữ liệu bằng API v2 twitter để kiểm tra lượt like,theo dõi , tweet

Share
  • 179 0 1

Xin chào các anh chị trên diện đàn viblo hôm nay em có lập trình 1 con bot telegram .Và gặp 1 số vấn đề trong việc xử lý cách bot lấy thông tin kiểm tra bằng API twitter Cụ thể tính năng em muốn nói ở đây là : Em muốn bot sẽ tự động xác minh nhiệm vụ của người dùng ,khi tham gia nhiệm vụ trong bot TELEGRAM

image.png image.png Ảnh minh họa Đây là hình ảnh mà em đã dùng lệnh /theodoi để xử lý tác vụ này nhưng báo lỗi như trên,mặc dù emm đã kết nối API của twitter rồi Và không chỉ riêng chức năng này mà e cũng đang muốn thêm các chức năng nữa là ,kiểm tra lượt theo dõi ,lượt đã tweet, lượt tag bạn bè nữa ạ qua đây em muốn tìm 1 cao nhân giỏi về js hỗ trợ em về vấn đề này ạ em sẽ gửi công xứng đáng ạ Cám ơn anh chị đã xem Đây là 1 đoạn code em đã dùng để xử lý lệnh đó

const twitterAccounts = ['obs393778517634', 'CarlaYo87526503'];

// Hàm xử lý lệnh "/theodoi"
bot.onText(/\/theodoi/, async (msg, match) => {
  const chatId = msg.chat.id;

  try {
    // Kiểm tra tweet mới nhất của từng tài khoản Twitter cần theo dõi
    for (const account of twitterAccounts) {
      const tweetResponse = await twitterClient.v2.get(`users/by/username/${account}/tweets`, { tweet_mode: 'extended' });

      // Nếu có tweet mới, gửi thông báo cho người dùng của bot
      if (tweetResponse.data.length > 0) {
        const latestTweet = tweetResponse.data[0];
        const tweetLink = `https://twitter.com/${account}/status/${latestTweet.id}`;

        await bot.sendMessage(chatId, `Tài khoản ${account} vừa đăng tweet mới: ${tweetLink}`);
      }
    }
  } catch (error) {
    console.error(error);
    await bot.sendMessage(chatId, 'Đã có lỗi xảy ra khi xử lý yêu cầu của bạn. Vui lòng thử lại sau.');
  }
});
```!

1 ANSWERS


Answered Jul 9th, 2023 12:59 p.m.
0

Bạn debug từng dòng xem lỗi ở đâu. Mình nghĩ đang bị reach rate limit của twitter API, bạn set time sleep cho mỗi lần gọi API xem sao.

Share
Viblo
Let's register a Viblo Account to get more interesting posts.