You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Instabot无法向同一用户发送多条消息问题求助

Instabot循环发送消息卡住问题排查

我在搭建Instabot,想让机器人从数组里选取消息发送给同一个用户,但测试时仅第一条消息能成功发送,之后机器人就会卡住。

代码示例

messages = ['test1', 'test2', 'test3']
bot = Bot()
bot.login(username='test1', password='test1')

for message in messages:
    bot.send_message(message, ['test1'])

我期望脚本能依次向同一用户发送test1、test2、test3这三条消息。有没有人遇到过相同问题?会不会是线程问题?

日志信息

2022-10-18 23:51:13,875 - instabot version: 0.117.0 (api) - DEBUG - GET to endpoint: multiple_accounts/get_account_family/ returned response: <Response [200]>
2022-10-18 23:51:14,353 - instabot version: 0.117.0 (api) - DEBUG - POST to endpoint: qe/sync/ returned response: <Response [200]>
2022-10-18 23:51:14,592 - instabot version: 0.117.0 (api) - DEBUG - GET to endpoint: igtv/browse_feed/?prefetch=1 returned response: <Response [404]>
2022-10-18 23:51:14,592 - instabot version: 0.117.0 (api) - DEBUG - Responsecode indicates error; response content: ...
2022-10-18 23:51:14,592 - instabot version: 0.117.0 (api) - ERROR - Error checking for `feedback_required`, response text is not JSON
2022-10-18 23:51:14,592 - instabot version: 0.117.0 (api) - INFO - Full Response: <Response [404]>
2022-10-18 23:51:14,592 - instabot version: 0.117.0 (api) - INFO - Response Text: <!DOCTYPE html>

问题分析与解决办法

从日志来看,发送第一条消息后,机器人请求igtv/browse_feed/端点返回404错误,导致后续流程中断。这不是线程问题,属于instabot库内部的API请求异常。

可以尝试以下几种解决方案:

  • 添加操作延迟:Instagram对频繁操作有风控限制,在每次发送消息后增加几秒延迟,避免触发限制。修改后的代码如下:
import time

messages = ['test1', 'test2', 'test3']
bot = Bot()
bot.login(username='test1', password='test1')

for message in messages:
    bot.send_message(message, ['test1'])
    time.sleep(5)  # 每次发送后延迟5秒,可根据情况调整时长
  • 更新instabot版本:你当前使用的0.117.0版本较旧,新版本可能修复了API端点适配问题,执行命令pip install --upgrade instabot完成更新。
  • 添加异常捕获:在循环中加入异常处理逻辑,避免单次请求失败导致整个脚本卡住:
messages = ['test1', 'test2', 'test3']
bot = Bot()
bot.login(username='test1', password='test1')

for message in messages:
    try:
        bot.send_message(message, ['test1'])
    except Exception as e:
        print(f"发送消息失败: {str(e)}")
        continue

内容的提问来源于stack exchange,提问作者antpngl92

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 10:02:24