А подробнее можно?
Не работает почему то.
curl_setopt($ch, CURLOPT_POSTFIELDS,"username=".$login."&password=".$pass."&csrfmiddlewaretoken=".$key);
https://instagram.com/accounts/login/
Да, в пост неправильные поля выкинул, шля по правильным на указанный Вами адрес, но 403 выбивает (---------- Добавлено 05.01.2014 в 13:30 ----------А если сервер отдаст 302, то как я понимаю авторизация прошла успешно?---------- Добавлено 05.01.2014 в 14:24 ----------Проблему решил, всем спасибо за помощь.
HTML5 API history не?
По поводу того, как решить проблему авторизации в instagram на php, т.к. в сети нигде нету решения, а хотелось бы разобраться с этим вопросом, т.к. не только мне, но и может еще кому нибудь понадобиться.
Есть у кого какие идеи?
Спарсил ключил, а вот как полученые куки применить грамотно (правильно)?---------- Добавлено 04.01.2014 в 16:47 ----------Что я делаю ни так?
$url="https://instagram.com/accounts/login/";$login="sdfwefef";$pass="grergrgrg";$page = file_get_contents($url);$content = preg_match('<input type="hidden" name="csrfmiddlewaretoken" value="(.*?)">', $page, $found); function login($url,$login,$pass,$key){ $ch = curl_init(); if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); } curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_REFERER, $url); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_POSTFIELDS,"login=".$login."&pass=".$pass."&csrfmiddlewaretoken=".$key); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (Windows; U; Windows NT 5.0; En; rv:1.8.0.2) Gecko/20070306 Firefox/1.0.0.4"); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); $result=curl_exec($ch); if(strpos($result,"Location: index.php")===false) die('Login incorrect'); curl_close($ch); return $result;} login($url,$login,$pass,$found[1]);
curl_setopt($ch, CURLOPT_POSTFIELDS, "post1=1&post2=2");
curl_setopt($ch, CURLOPT_COOKIEJAR, getcwd()."/cookie.txt"); curl_setopt($ch, CURLOPT_COOKIEFILE, getcwd()."/cookie.txt");
Дело в том, что страница авторизации генерирует key случайный и передаем через форму с логином и паролем. Короче вообще беда, ничего не понимаю :(
Никто не знает как это реализовать?
access_token взят с примера.