Выдернуть страницу из аккаунта - задачка на php - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD64710.9287
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 15.12.2010, 03:31   #1
drivehunter
AdCoin Россия
 
Аватар для drivehunter
 
Регистрация: 10.07.2008
Сообщений: 455
Бабло: $40675
Отправить сообщение для drivehunter с помощью Telegram
Question Выдернуть страницу из аккаунта - задачка на php

Народ, помогите плз - перечитал кучу всего про POST/GET запросы на php, но скрипт работает тока наполовину.

Суть в том, что нуна залогиниться на сайте и выдернуть стату из аккаунта, чтоб распарсить. Кусок скрипта:

PHP код:
if ($fp fsockopen('site.com'80$errno$errstr10)) {
    
fputs($fp"POST /login.html HTTP/1.0\n".
        
"User-Agent: $useragent\n".
        
"Referer: http://site.com/login.html\n".
        
"Cookie: PHPSESSID=****************************\n".
        
"Content-Type: application/x-www-form-urlencoded\n".
        
"Content-Length: 25\n\n".
        
"login=LOGIN&password=PASS");
    
    
fputs($fp"GET /stat.html HTTP/1.0\n".
        
"Host: site.com\n".
        
"User-Agent: $useragent\n".
        
"Referer: http://site.com/\n".
        
"Cookie: PHPSESSID=*******************************");

    echo 
'<pre>';
    while(!
feof($fp)) echo fgets($fp);
    echo 
'</pre>';
    
    
fclose($fp);

Первый fputs нормально логинится в аккаунт, возвращает "302 Found" и "Location: ./stat.html".

Дальше остается загрузить этот самый stat.html и вот тут затык - GET-запрос не отправляется, хоть ты тресни - кучу вариантов перепробовал уже.
Соответственно и результат хост не возвращает - отладочный "echo fgets($fp)" ничо не выводит.

Подскажите ченить или ткните носом в нормальный док.
drivehunter вне форума  
Старый 15.12.2010, 03:45   #2
ArmanenD
ArmanenD
 
Регистрация: 01.01.2009
Сообщений: 813
Бабло: $100500
По умолчанию

куки у тебя не парсятся?
ArmanenD вне форума  
Старый 15.12.2010, 03:51   #3
drivehunter
AdCoin Россия
 
Аватар для drivehunter
 
Регистрация: 10.07.2008
Сообщений: 455
Бабло: $40675
ТС -->
Отправить сообщение для drivehunter с помощью Telegram
автор темы ТС По умолчанию

Цитата:
Сообщение от ArmanenD Посмотреть сообщение
куки у тебя не парсятся?
эээ.. не уверен, что правильно понял вопрос - но нафига мне их парсить?
мне надо stat.html получить, но тк я его получить не могу, то парсинга дело еще не дошло.
drivehunter вне форума  
Старый 15.12.2010, 03:54   #4
ArmanenD
ArmanenD
 
Регистрация: 01.01.2009
Сообщений: 813
Бабло: $100500
По умолчанию

после первого fputs считываешь куки и передаешь вов второй
"Cookie: PHPSESSID=*******************************");
ArmanenD вне форума  
Старый 15.12.2010, 04:03   #5
drivehunter
AdCoin Россия
 
Аватар для drivehunter
 
Регистрация: 10.07.2008
Сообщений: 455
Бабло: $40675
ТС -->
Отправить сообщение для drivehunter с помощью Telegram
автор темы ТС По умолчанию

ну дык я куки и передаю во втором fputs.
посмотрел что браузер передает в заголовке когда заходит на stat.html - там кука есть в хедере. я именно так все и засунул в скрипт.
ессно такую же куку с сессией, как в первом fputs.
drivehunter вне форума  
Старый 15.12.2010, 04:05   #6
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 13,230
Бабло: $247845891
По умолчанию

Цитата:
Сообщение от drivehunter Посмотреть сообщение
ну дык я куки и передаю во втором fputs.
посмотрел что браузер передает в заголовке когда заходит на stat.html - там кука есть в хедере. я именно так все и засунул в скрипт.
ессно такую же куку с сессией, как в первом fputs.
а куку точно актуальную передаешь во втором запросе? она одинаковая все время?
imgreen вне форума  
Старый 15.12.2010, 04:12   #7
drivehunter
AdCoin Россия
 
Аватар для drivehunter
 
Регистрация: 10.07.2008
Сообщений: 455
Бабло: $40675
ТС -->
Отправить сообщение для drivehunter с помощью Telegram
автор темы ТС По умолчанию

Цитата:
Сообщение от imgreen Посмотреть сообщение
а куку точно актуальную передаешь во втором запросе? она одинаковая все время?
стопудово одинаковая!

вот так счас сделал, чтоб уж наверняка:

PHP код:
$cookie "PHPSESSID=код_сессии";
...
"Cookie: $cookie\n".
...
"Cookie: $cookie\n"); 
drivehunter вне форума  
Старый 15.12.2010, 07:35   #8
KYO
blackseo
 
Аватар для KYO
 
Регистрация: 04.04.2007
Адрес: StandAlone
Сообщений: 1,053
Бабло: $196065
Отправить сообщение для KYO с помощью ICQ
По умолчанию

делай на CURL
__________________
Возьми домой раненую осу и ты узнаешь, чем платит доброта
KYO вне форума  
Старый 15.12.2010, 17:28   #9
drivehunter
AdCoin Россия
 
Аватар для drivehunter
 
Регистрация: 10.07.2008
Сообщений: 455
Бабло: $40675
ТС -->
Отправить сообщение для drivehunter с помощью Telegram
автор темы ТС По умолчанию

Цитата:
Сообщение от KYO Посмотреть сообщение
делай на CURL
охуенный совет, все сразу стало понятно. спасибо, бро!
drivehunter вне форума  
Старый 15.12.2010, 18:13   #10
Foma
Кролик
 
Аватар для Foma
 
Регистрация: 15.08.2007
Сообщений: 297
Бабло: $37345
По умолчанию

Цитата:
Сообщение от drivehunter Посмотреть сообщение
охуенный совет, все сразу стало понятно. спасибо, бро!
Ты объясни что у тебя не получается.
А то фразу "GET запрос не отправляется" можно понять по разному.

Опиши проблему подробнее

ЗЫ
могу скинуть свой класс для работы с курлом. скинь асю в пм я стукну
Foma вне форума