Просмотр полной версии : Curl
incognito
28.06.2006, 12:38
раньше я использовал curl но сейчас меня обнаружили!
и в куках пишет This file was generated by libcurl!
что я делаю не так!!!
OFF1genny_su1c1D
28.06.2006, 13:07
На сколько я знаю curl это качалка для nix-ов... Причем здесь куки и то что тебя "обнаружили"(кстати кто?)? Наверное не только я чего-то в твоей мессаге не понял. Поясни если не трудно.
incognito
28.06.2006, 13:17
я про библиотеку под php
сейчас меня определяют то есть что я загружаю страницу спомощью curl!
blackybr
28.06.2006, 13:21
передавай хидер и все такое.. что может быть определено как буто ты сидишь под браузером.. тут все можш прочитать http://ru.php.net/manual/ru/ref.curl.php
incognito
28.06.2006, 13:25
$url="http://sait.ru/cat/1/";
$ch = curl_init ($url);
$header[] = "GET /cat/1/ HTTP/1.1";
$header[] = "Accept: */*";
$header[] = "Referer: http://www.ya.ru";
$header[] = "Accept-Language: ru";
$header[] = "Accept-Encoding: gzip, deflate";
$header[] = "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)";
$header[] = "Host: sait.ru";
$header[] = "Connection: Keep-Alive";
все равно не работает
blackybr
28.06.2006, 13:31
может дело в куках - т.е. тебе нужно еще добавить возможность ставить сайтом печенье?
incognito
28.06.2006, 13:36
сделал вот что в куки записывает
# Netscape HTTP Cookie File
# http://www.netscape.com/newsref/std/cookie_spec.html
# This file was generated by libcurl! Edit at your own risk.
sait.ru FALSE / FALSE 0 PHPSESSID 75e81c126a718f157bf92c7cdcf8e29b
incognito
28.06.2006, 14:11
профи по curl отзовитесь
fucker"ok
28.06.2006, 15:46
юзай сокеты. Все профи пишут через сокеты =) (или почти все)
incognito
28.06.2006, 16:32
а curl разве
не через сокеты пашет?
юзай сокеты. Все профи пишут через сокеты =) (или почти все) бред.
юзай сокеты. Все профи пишут через сокеты =) (или почти все) может еще все профи пишут свою ос?
fucker"ok
28.06.2006, 17:07
Я к тому свожу, что если бы топикстартер писал через сокеты, то никаких "This file was generated by libcurl" он бы не получал, ибо глубже бы знал "как это работает".
Темболее подобная тема (формирование запросов) уже нираз подымалась в этом форуме.
В своё время я тоже пользовался curl, до тех пор пока не сталкнулся с проблемой, которую через curl решить нельзя. Потратил несколько часов на изучение http запросов. Зато теперь радости полные штаны.
incognito
28.06.2006, 17:09
может подкините ссылок на доки по http запросам
fucker"ok
28.06.2006, 17:30
Это пример запроса на CURL:
http://forum.antichat.ru/showthread.php?t=5795
(кстати, в доказательство, что я тоже CURL пользовался =) )
Пример Post Get через сокеты.
function Get($server,$url,$cookie=null)
{
$q="GET $url HTTP/1.0\r\n";
$q.="Host: $server\r\n";
$q.="Cookie: $cookie\r\n";
$s=fsockopen($server,80);
fputs($s,$q);
while (!feof($s)) $page.=fgets($s);
fclose($s);
return $page;
function Post($server,$url,$post,$cookie=null)
{
$q="POST $url HTTP/1.1\r\n".
"Host: $server\r\n".
"User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n".
'Accept:text/html, image/jpeg, image/png, text/*, image/*, */*'."\r\n".
"Accept-Encoding: x-gzip, x-deflate, gzip\r\n".
"Accept-Charset: windows-1251, utf-8;q=0.5, *; q=0.5\r\n".
"Accept-Language:ru, en\r\n".
"Keep-Alive: 300\r\n".
"Proxy-Connection: keep-alive\r\n".
"Cookie: $cookie \r\n"
"Referer: $server \r\n".
//
"Content-Type: application/x-www-form-urlencoded\r\n".
"Content-Length: ".strlen($post)."\r\n".
"\r\n".
"$post\r\n";
$s=fsockopen($server,80);
fputs($s,$q);
while (!feof($s)) $page.=fgets($s);
fclose($s);
return $page;
}
http://lib.ru/WEBMASTER/rfc2068/
А вообще, для чистоты эксперемента, совутую научится пользоватся снифером.
http://phpclub.ru/detail/article/http_request
P.S. никонда с курлом не работал. Надо учиться...
fucker"ok
28.06.2006, 17:42
никонда с курлом не работал. Надо учиться...
А мне -4 сделал =]
а curl разве
не через сокеты пашет?
Через них конечно. Всё дело в том, что когда ТЫ пишишь через сокеты, то запрос формируешь ТЫ. А в случае Curl ты только задаёшь переменные, а curl может вставить например свой юзер-агент или ещё что-нибудь...
incognito
28.06.2006, 17:51
а сокеты поддерживают редирект
А мне -4 сделал =] я знаю, что я поступал глупо(правда тогда максимум, что было у меня - бесплатный хостинг). А вот ты это и советуешь вместо правильного решения.
fucker"ok
28.06.2006, 17:57
а сокеты поддерживают редирект
Пять =)
Нет, сокеты не могут поддерживать редирект, потому-что сокеты не только для http запросов. Сокеты посылают\принимают. В этом их задача.
Чтобы был редирект, тебе прийдётся анализировать полученный хедер, ну и дальше.... =)
incognito
28.06.2006, 19:07
расскажите как
fucker"ok
28.06.2006, 19:15
Опиши свою задачу подробно плиз. Как ты себе представляешь ход работы твоей программа. Чем сможем поможем =)
Укажи так же страницу, которую ты запрашиваешь, на которой есть редирект. Ведь редирект можно сделать разными способами: хедер, мета, жабаскрипт...
guest3297
30.06.2006, 03:10
вообщето да...
ps все сетевые приложения в каком то роде работают через сокеты.
А мне -4 сделал =]
Через них конечно. Всё дело в том, что когда ТЫ пишишь через сокеты, то запрос формируешь ТЫ. А в случае Curl ты только задаёшь переменные, а curl может вставить например свой юзер-агент или ещё что-нибудь...
Все хеадеры можно редактировать. В том числе и юзер-эджент. К тому же курл поддерживает автоматический редирект, если его через хеадер посылают, скоро будет(если уже не реализовали, недавно видел на php.net/curl обещание +)) поддержка сессий.
Юзать ли curl или сокеты - тут нужно решать для конкретного случая отдельно...
опять стеб мне кажется=/ харе над ачатом издеваться.
incognito
30.06.2006, 14:47
что скажите про
CURLOPT_AUTOREFERER
CURLOPT_COOKIESESSION на
http://ru.php.net/curl
опять стеб мне кажется=/ харе над ачатом издеваться.
Тебе кажется =)
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot