subzeroid / instagrapi

🔥 The fastest and powerful Python library for Instagram Private API 2024
https://hikerapi.com/p/bkXQlaVe
MIT License
4.21k stars 667 forks source link

[BUG] instagrapi.exceptions.ClientForbiddenError #1281

Closed sxs1316 closed 1 year ago

sxs1316 commented 1 year ago

Describe the bug Description Failed to send the message. Interface: direct_send

To Reproduce c.direct_send('text', [xxx])

Traceback

>>> c.login(u,p)
True
>>> c.direct_send('text', [58270240338])
Traceback (most recent call last):
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/instagrapi/mixins/private.py", line 313, in _send_private_request
    response.raise_for_status()
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/requests/models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://i.instagram.com/api/v1/direct_v2/threads/broadcast/text/

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/instagrapi/mixins/direct.py", line 264, in direct_send
    result = self.private_request(
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/instagrapi/mixins/private.py", line 461, in private_request
    raise e
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/instagrapi/mixins/private.py", line 446, in private_request
    self._send_private_request(endpoint, **kwargs)
  File "/InsSendMessage/098f6bcd4621d373cade4e832627b4f6_venv/lib/python3.9/site-packages/instagrapi/mixins/private.py", line 340, in _send_private_request
    raise ClientForbiddenError(e, response=e.response, **last_json)
instagrapi.exceptions.ClientForbiddenError: {"action":"item_ack","status_code":"403","payload":{"client_context":"6800027182887329958","message":"We're sorry, but something went wrong. Please try again. Client context:6800027182887329958"},"status":"fail"}
>>> c.account_info()
Account(pk='58839478925', username='barbara.thomasbyol3d2rha', full_name='Barbara', is_private=False, profile_pic_url=HttpUrl('https://instagram.fsrg6-1.fna.fbcdn.net/v/t51.2885-19/44884218_345707102882519_2446069589734326272_n.jpg?_nc_ht=instagram.fsrg6-1.fna.fbcdn.net&_nc_cat=1&_nc_ohc=DM-1yod52ScAX_ltdvY&edm=AL4D0a4BAAAA&ccb=7-5&ig_cache_key=YW5vbnltb3VzX3Byb2ZpbGVfcGlj.2-ccb7-5&oh=00_AfD6QqbNyTfW8FCkemT3zJi0YeNA33hzwCRlKh5brBBfnQ&oe=64468ECF&_nc_sid=712cc3', ), is_verified=False, biography='', external_url=None, is_business=False, birthday='1984-06-13', phone_number='+62895811290803', gender=3, email='')

Expected behavior I want to send a message

Screenshots image

Desktop (please complete the following information):

Additional context

{"action":"item_ack","status_code":"403","payload":{"client_context":"6800027182887329958","message":"We're sorry, but something went wrong. Please try again. Client context:6800027182887329958"},"status":"fail"}
SaeidB commented 1 year ago

fixed :

https://github.com/adw0rd/instagrapi/pull/1285

Suleman-Elahi commented 1 year ago

Getting the same error while cancelling the follow request.

Traceback (most recent call last):
  File "D:\test\lib\site-packages\instagrapi\mixins\private.py", line 334, in _send_private_request
    response.raise_for_status()
  File "D:\test\lib\site-packages\requests\models.py", line 1021, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://i.instagram.com/api/v1/friendships/destroy/7980401466/

Code:

from instagrapi import Client
import time, random
cl = Client()
cl.login('', '')

with open('users.txt','r') as f:
    users = f.readlines()

for user in users:
    user_id = cl.user_id_from_username(user.strip())
    print("Cancelling Request for: ", user.strip())
    cl.user_unfollow(user_id)
    time.sleep(random.uniform(3, 7))
DGxg9420 commented 2 months ago

QQ截图20240716002254

One possible reason is that the sender has a private account.