Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы с cURL 
:(
    Опции темы
Killerkod
Дата 4.11.2013, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 27
Регистрация: 23.1.2008

Репутация: нет
Всего: нет



Добрый день.
Проблема такая:
Нужно тянуть данные с этой страницы - http://egov.kz/wps/portal/P40.05
Нужно заполнить форму через cURL и получить в ответ страницу.
Проблема в том, что сайт возвращает чистую страницу, нужны обязательно куки.
Через cURL получить данные никак не получается.
Если отправить запрос через браузер, потом подставить в cURL параметр JSESSIONID полученный из браузера, то все срабатывает, но только на то имя, на которое был запрос с браузера. Т.е. даже не обязательно потом поля формы высылать.
А напрямую через cURL не работает.
Вот код:
Код

$hostname = 'http://egov.kz/wps/portal/!ut/p/b1/jc5NDoIwEAXgs3AAM9NSoV22wdIGBRN_sN0YFsaQAE2Men6RPejsXvK9vAEPjgiOjHFBGVzAD827vTfPNgxN980-uVaG6HwtYqyKTKLdp6wQaCjuyAjcCMqKnjSzhPBkQ5Amhqnt2WKexf_1ceYk_urX4Cey9MEEFiZKE_obHB4vcCNNZ-cMhSM4Bb3vtLArFWQUfQC06pLn/dl4/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_OH1FG5930OKDA0IP74K90H20H2/act/id=0/p=javax.servlet.include.path_info=QCPP4005PortletView.jsp/244820460075/-/'; // имя хоста, куда будем заходить 

$postdata = array( // объявляем набор параметров для передачи
'javax.faces.ViewState'=>'j_id9:j_id10',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm'=>'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:acceptSignRequestButton'=>'Отправить запрос',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:beginDate_textDatePicker'=>'31.01.1990',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:currentLang'=>'ru',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:docNumberIdInteger'=>'123456789',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:middleNameIdStr'=>'',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:nameIdStr'=>'Дмитрий',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:surnameIdStr'=>'Петров',
'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:userCookieId'=>'viewns_Z7_OH1FG5930OKDA0IP74K90H20H2_:demoForm:userCookieId'
);
//$postdata = http_build_query($postdata);
$headers = array(
'Host: egov.kz',
'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',
'Accept-Encoding: gzip, deflate',
'Cache-Control:    max-age=0',
'Accept-Charset: utf-8;q=0.7,*;q=0.7',
'Connection: keep-alive',
);
 
$ch = curl_init($hostname); // инициализация cURL   
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0"); // установка браузера
curl_setopt($ch, CURLOPT_REFERER,'http://egov.kz/wps/portal/!ut/p/b1/jc5NDoIwEAXgs3AAMjOlFLuEYGmDgom_7cawMIYEaGLU84vsQWf3ku_lDTiwIXHJEhmRiOECbmje7b15tn5oum924lprUkUsI6zLPEWzS3gpUTPc0gjsCKqaHRU3RCuxJmRC82xzMljk0X99nLkUf_XP4Cay9MEEFiYq7fsb7B8vsCNNZuc0gwPYHHrXKWnCzKdB8AGT-7Sp/dl4/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_OH1FG5930OKDA0IP74K90H20H2/act/id=0/p=javax.servlet.include.path_info=QCPP4005PortletView.jsp/244482562068/-/'); // Подделываем значение - откуда пришли данные.
curl_setopt($ch, CURLOPT_POST, TRUE); // параметры метода POST
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
curl_setopt($ch, CURLOPT_VERBOSE, 2); // Отображать детальную информацию о соединении
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // выводит переменную
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // следовать за редиректами

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_COOKIESESSION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__).'/cookie.txt'); // сохранять куки в файл
curl_setopt($ch, CURLOPT_COOKIEFILE,  dirname(__FILE__).'/cookie.txt');
 
$page=curl_exec($ch);

curl_close ($ch); // закрыть сессию работы с cURL
 
echo gzinflate(substr($page, 10));


В ответе нет даже ошибки. Данные конечно не правильные и должна быть ошибка.


Это сообщение отредактировал(а) Killerkod - 4.11.2013, 14:28
PM MAIL   Вверх
marioadm
Дата 6.5.2014, 01:31 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


программист PHP
*


Профиль
Группа: Участник
Сообщений: 94
Регистрация: 23.4.2013
Где: Цюрих

Репутация: нет
Всего: 0



 smile 
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Сеть | Следующая тема »


 




[ Время генерации скрипта: 0.1049 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.