Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- function login($url,$login,$pass){
- $ch = curl_init();
- if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https
- //моя вставка
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- //моя вставка
- 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 будет выводить подробные сообщения о всех производимых действиях
- curl_setopt($ch, CURLOPT_VERBOSE, 1);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"username=".$login."&password=".$pass);
- curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36");
- curl_setopt($ch, CURLOPT_HEADER, 1);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- echo "username=".$login."&password=".$pass;
- //сохранять полученные COOKIE в файл
- curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
- $result=curl_exec($ch);
- // Убеждаемся что произошло перенаправление после авторизации
- if(strpos($result,"Location: home.php")===false) die('Login incorrect');
- curl_close($ch);
- return $result;
- }
- // чтение страницы после авторизации
- function Read($url){
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- // откуда пришли на эту страницу
- curl_setopt($ch, CURLOPT_REFERER, $url);
- //запрещаем делать запрос с помощью POST и соответственно разрешаем с помощью GET
- curl_setopt($ch, CURLOPT_POST, 0);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- //отсылаем серверу COOKIE полученные от него при авторизации
- curl_setopt($ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
- 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");
- $result = curl_exec($ch);
- curl_close($ch);
- return $result;
- }
- $urlAut = "https://auth.vezetvsem.ru/auth/login";
- login($urlAut,"6kp5228wi4@kismail.ru","w33q5u8t");
- $page = Read("http://www.vezetvsem.ru/listing");
- echo $page;
- ?>
- $data = array('username' => username, 'password' => password, login =>Войти);
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- curl_setopt($ch, CURLOPT_REFERER, $url);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt');
- 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");
- $result = curl_exec($ch);
- $ch = curl_init();
- if(strtolower((substr($url,0,5))=='https')) { // если соединяемся с https
- //моя вставка
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- //моя вставка
- 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 будет выводить подробные сообщения о всех производимых действиях
- curl_setopt($ch, CURLOPT_VERBOSE, 1);
- curl_setopt($ch, CURLOPT_POST, 1);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- curl_setopt($ch, CURLOPT_POSTFIELDS,"username=".$login."&password=".$pass);
- curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36");
- curl_setopt($ch, CURLOPT_HEADER, 1);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- //сохранять полученные COOKIE в файл
- curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookievezetvsem.txt');
- $result=curl_exec($ch);
- // Убеждаемся что произошло перенаправление после авторизации
- //if(strpos($result,"Location: home.php")===false) die('Login incorrect'); // для чего нужен этот код и как он работает?
- curl_close($ch);
- return $result;
- }
- // чтение страницы после авторизации
- function Read($url){
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- // откуда пришли на эту страницу
- curl_setopt($ch, CURLOPT_REFERER, $url);
- //запрещаем делать запрос с помощью POST и соответственно разрешаем с помощью GET
- curl_setopt($ch, CURLOPT_POST, 0);
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
- //отсылаем серверу COOKIE полученные от него при авторизации
- curl_setopt($ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookievezetvsem.txt');
- curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36");
- $result = curl_exec($ch);
- curl_close($ch);
- return $result;
- }
- function mainParser( $url )// парсер с кукисами
- {
- $ch = curl_init( $url );
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвращает веб-страницу
- curl_setopt($ch, CURLOPT_COOKIESESSION, true);
- curl_setopt($ch, CURLOPT_HEADER, 0); // не возвращает заголовки
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // переходит по редиректам
- curl_setopt($ch, CURLOPT_ENCODING, ""); // обрабатывает все кодировки
- curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36"); // useragent
- curl_setopt($ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookievezetvsem.txt'); //хотя тут скорей всего он не записывает, а после каждого прохода вновь обращается к этому файлу
- curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // таймаут соединения
- curl_setopt($ch, CURLOPT_TIMEOUT, 120); // таймаут ответа
- curl_setopt($ch, CURLOPT_MAXREDIRS, 10); // останавливаться после 10-ого редиректа
- $content = curl_exec( $ch );
- $err = curl_errno( $ch );
- $errmsg = curl_error( $ch );
- $header = curl_getinfo( $ch );
- curl_close( $ch );
- $header['errno'] = $err;
- $header['errmsg'] = $errmsg;
- $header['content'] = $content;
- return $header;
- }
- $urlAut = "https://auth.vezetvsem.ru/auth/login";
- login($urlAut,"XXX","XXX");
- //login($urlAut,"6kp5228wi4@kismail.ru","w33q5u8t"); // по непонятной причине, эта пара Login, пароль возвращает неавторизованную страницу, Почему, я не понимаю.
- //$result = Read("http://www.vezetvsem.ru/listing"); // по какой то причине эта функция не работает, почему, я пока не понимаю
- $result = mainParser("http://www.vezetvsem.ru/listing");
- $page = $result['content'];
- echo $page;
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement