Задать вопрос
@yhikaru

Как вручную отправлять капчу в Vk_api на Python?

Пишу несложную программу прямо в компиляторе Питона, которая должна выполнять действия в реальном времени. Выдаёт ошибку vk_api.exceptions.Captcha: Captcha needed. Как с этим бороться? Можно ли вводить капчу вручную прямо в компиляторе или как-нибудь по-другому, не используя платные сервисы антикапчи? Никаких ссылок на капчу программа не выдает. Вот полный текст ошибки:
Traceback (most recent call last):
File "C:/Users/Ия/Documents/Питон/f.py", line 27, in
print(vk.wall.repost(object=a[i][2], group_id=a[i-2][1], publish_date=time2), a[i][0])
File "C:\Users\Ия\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\vk_api\vk_api.py", line 681, in __call__
return self._vk.method(self._method, kwargs)
File "C:\Users\Ия\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\vk_api\vk_api.py", line 641, in method
response = self.error_handlers[error.code](error)
File "C:\Users\Ия\AppData\Local\Programs\Python\Python37-32\Lib\site-packages\vk_api\vk_api.py", line 523, in captcha_handler
raise captcha
vk_api.exceptions.Captcha: Captcha needed
Спасибо заранее.
  • Вопрос задан
  • 2600 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@niriter
User
Подбираете ответ сервера, берете id_капчи [captcha_sid] и ссылку на изображение капчи [captcha_img], выводите в консоли и ожидаете инпута ответа. Переходите по ссылке на изображение, вводите обратно в консоль результат, и отправляете тот же запрос только с [captcha_sid] и [captcha_img]
import vk_api
import time

vk_session = vk_api.VkApi('+7**********', '********')
vk_session.auth()

vk = vk_session.get_api()
for i in range(10):
    try:
        if s_id and code:
             print(vk.wall.repost(object='wall-126227863_90727', captcha_sid=s_id, captcha_key=code))
             s_id = False
             code = False
        else:
             print(vk.wall.repost(object='wall-126227863_90727'))
    except vk_api.Captcha as e:
        s_id = e.sid
        print(e.url)
        code = input()
        i = i-1
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
makssof
@makssof
Go Backend
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
22 дек. 2024, в 20:40
10000 руб./за проект
22 дек. 2024, в 20:34
3000 руб./за проект
22 дек. 2024, в 20:12
10000 руб./за проект