пост данные выглядят так
<input type='hidden' name='act' value='Post' />
<input type='hidden' name='s' value='' />
<input type='hidden' name='f' value='201' />
<input type='hidden' name='auth_key' value='0b636b48819787da8b5fa48c2c27185b' />
<input type='hidden' name='removeattachid' value='0' />
<input type='hidden' name='MAX_FILE_SIZE' value='102400000' />
<input type='hidden' name='CODE' value='01' />
<input type='hidden' name='attach_post_key' value='44a6b7fccccb10d1b2017bab32464721' />
етот ключ
<input type='hidden' name='attach_post_key' value='44a6b7fccccb10d1b2017bab32464721' />
меняется при каждом отерытии формы отправки, вопрос как отправить пост запрос,
вот мой код
Свернутый текст
$cur=curl_init();
curl_setopt($cur, CURLOPT_URL, 'http://site.ru/index.php?act=Login&CODE=01&CookieDate=1');
curl_setopt($cur,CURLOPT_USERAGENT,"Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.8.131 Version/11.10");
curl_setopt($cur,CURLOPT_COOKIEJAR,'cookie.txt');
curl_setopt($cur,CURLOPT_COOKIEFILE,'cookie.txt');
curl_setopt($cur,CURLOPT_RETURNTRANSFER,1);
curl_setopt($cur, CURLOPT_POST, 1);
curl_setopt($cur, CURLOPT_POSTFIELDS, "referer=$refer&UserName=login&PassWord=pass&CookieDate=1&Privacy=1");
curl_exec($cur);
curl_close($cur);
$cur=curl_init();
curl_setopt($cur, CURLOPT_URL, 'http://site.ru/index.php?act=post&do=new_post&f=201');
curl_setopt($cur,CURLOPT_USERAGENT,"Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.8.131 Version/11.10");
curl_setopt($cur,CURLOPT_COOKIEJAR,'cookie.txt');
curl_setopt($cur,CURLOPT_COOKIEFILE,'cookie.txt');
curl_setopt($cur,CURLOPT_RETURNTRANSFER,1);
$doc = curl_exec($cur);
curl_close($cur);
preg_match("/<input type=\'hidden\' name=\'attach_post_key\'(.*?)\/>/",$doc, $aa);
preg_match("/[a-zA-Z0-9]{10,100}/",$aa[0], $bb);
$cur=curl_init();
curl_setopt($cur, CURLOPT_URL,'http://site.ru/index.php?' );
curl_setopt($cur,CURLOPT_USERAGENT,"Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.8.131 Version/11.10");
curl_setopt($cur,CURLOPT_COOKIEJAR,'cookie.txt');
curl_setopt($cur,CURLOPT_COOKIEFILE,'cookie.txt');
curl_setopt($cur,CURLOPT_RETURNTRANSFER,1);
curl_setopt($cur, CURLOPT_POST, 1);
curl_setopt($cur, CURLOPT_POSTFIELDS, "act=Post&f=201&auth_key=47442e6ac2fd23311b01a0db9ed438b1&removeattachid=0&MAX_FILE_SIZE=102400000&CODE=01&attach_post_key=$bb[0]&TopicTitle=$theme&TopicDesc=0&Post=$mypost");
curl_exec($cur);
curl_close($cur);
но такой вариант естественно неподходит, как быть? помогите исправить код штобы он работал плыз
Спустя 8 часов, 27 минут, 47 секунд (11.08.2011 - 22:55) walerus написал(а):
Зачем столько курлов ?? если поля отправляются ОДИН раз ? адрес форума в студию... попробую помочь.
Спустя 12 часов, 21 минута, 6 секунд (12.08.2011 - 11:16) qaz333 написал(а):
Цитата (walerus @ 11.08.2011 - 19:55) |
Зачем столько курлов ?? если поля отправляются ОДИН раз ? адрес форума в студию... попробую помочь. |
вот форум
Спустя 37 минут, 12 секунд (12.08.2011 - 11:53) walerus написал(а):
Вот скрипт.
Что не понятно, спрашивайте...
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<?
set_time_limit( 0 );
error_reporting( E_ALL );
clearstatcache();
function _post($array)
{
$result = '';
foreach ($array as $name => &$value)
$result .= ($result)? '&'.$name.'='.urlencode($value) : $name.'='.urlencode($value);
return $result;
}
// имя файла для куки
$cookie_filename = 'cookies_tmp.tmp';
//настраиваем курл
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 30);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.0; en; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1');
curl_setopt($curl, CURLOPT_COOKIEFILE, $cookie_filename);
curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie_filename);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
$user_name = ''; // Указать логин пользователя
$user_pass = ''; // Указать пароль пользователя
$form_login = array( 'UserName' => $user_name,
'PassWord' => $user_pass,
'referer' => 'http://wmforum.net.ru/',
'CookieDate' => '1',
);
## Переходим на страницу логина
curl_setopt($curl, CURLOPT_REFERER, 'http://wmforum.net.ru/');
curl_setopt($curl, CURLOPT_URL, 'http://wmforum.net.ru/index.php?act=Login&CODE=00');
curl_setopt($curl, CURLOPT_POST, false);
$content = curl_exec($curl);
## Логинимся
curl_setopt($curl, CURLOPT_REFERER, 'http://wmforum.net.ru/?act=login&CODE=00');
curl_setopt($curl, CURLOPT_URL, 'http://wmforum.net.ru/?act=login&CODE=01');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, _post($form_login));
$content = curl_exec($curl);
## Переходим на страницу пользователя
curl_setopt($curl, CURLOPT_REFERER, 'http://wmforum.net.ru/?act=login&CODE=01');
curl_setopt($curl, CURLOPT_URL, 'http://wmforum.net.ru/index.php?');
curl_setopt($curl, CURLOPT_POST, false);
$content = curl_exec($curl);
## Закрыли курл
curl_close($curl);
$content = iconv('windows-1251', 'utf-8', $content);
print_r( $content );
die;
Что не понятно, спрашивайте...
Спустя 5 часов, 36 минут, 56 секунд (12.08.2011 - 17:30) qaz333 написал(а):
ага, ето всё хорошо, он у меня видь проблема в другом, мне надо создать тему а не авторизоватся, и проблема в том денамическом ключе как описано в первом посте,
я незнаю как одним сиансом курла можно и спасить нужнную страницу+ключ и отправить пост запрос
я незнаю как одним сиансом курла можно и спасить нужнную страницу+ключ и отправить пост запрос
Спустя 6 часов, 9 минут, 36 секунд (12.08.2011 - 23:40) alexbel2404 написал(а):
значит распарсить ключ регуляркой )
в $result[1] будет ключ, потом отправить данные уже вместе с ключем)
preg_match("<input type='hidden' name='auth_key' value='(.*?)' />", $content, $result);
в $result[1] будет ключ, потом отправить данные уже вместе с ключем)
Спустя 2 минуты, 17 секунд (12.08.2011 - 23:42) qaz333 написал(а):
Цитата (alexbel2404 @ 12.08.2011 - 20:40) |
значит распарсить ключ регуляркой )
в $result[1] будет ключ, потом отправить данные уже вместе с ключем) |
если в первом сеансе я спарсю ключ и то во втором сеансе при отправки данных он уже неподойдёт, ето как капча вы же неможете сначала открыть страницу с одной копчой, обновить страеницу на которой будет уже другая и ввести первую, онаж неподойдёт
Спустя 1 час, 9 минут (13.08.2011 - 00:51) walerus написал(а):
Первый вопрос (без обид конечно), Вы по национальности кто?
Второе
Второе
Цитата |
вы же неможете сначала открыть страницу с одной копчой, обновить страеницу на которой будет уже другая и ввести первую, онаж неподойдёт |
никто не говорит что нужно обновлять страницу несколько раз, капча парсится, распознается, и отправляется POST параметром, вместе со всеми данными.
Вам нужно сначала изучить/повторить, принцип работы форм, чтоб писать парсеры и автосабмиттеры...
И последнее Вы лично сами, ручками пробовали создавать темы? Лично мне написали...
Цитата |
Этот форум только для чтения — новые темы и сообщения не принимаются. |
Так что я не в курсе, как там создать темы...
Спустя 9 минут, 4 секунды (13.08.2011 - 01:00) kirik написал(а):
walerus
не западло всяким спамерам помогать?
не западло всяким спамерам помогать?
Спустя 33 минуты (13.08.2011 - 01:33) walerus написал(а):
Цитата (kirik @ 12.08.2011 - 22:00) |
walerus не западло всяким спамерам помогать? |
Та там не в спамерстве дело (хотя мб и в нем, тогда уже лучше хрумер юзать), там форум для заработка, если я правильно понял. Заработок за общение типа.
Ну и по теме, он код выложил, что то правильно что то нет, мне проще написать с 0, чем ковырять его код, да и на спамера он сильно не похож, т.к. не знает даже, как разобрать капчу...
Кстати ТС, для чего скрипт то будешь использовать??

Спустя 3 часа, 25 минут, 15 секунд (13.08.2011 - 04:59) kirik написал(а):
Цитата (walerus @ 12.08.2011 - 18:33) |
там форум для заработка, если я правильно понял. Заработок за общение типа. |
Я заметил. Тоесть ты скрипт напишешь, а он будет зарабатывать?

Спустя 4 часа, 5 минут, 57 секунд (13.08.2011 - 09:04) walerus написал(а):
Цитата (kirik @ 13.08.2011 - 01:59) | ||
Я заметил. Тоесть ты скрипт напишешь, а он будет зарабатывать? ![]() |
Ну никто не мешает использовать скрипт другим, есть желание - пользуйтесь, но логином и созданием темы, я так думаю не закончится скрипт, еще нужно формировать тему сообщения, само сообщение и еще кучу всего )), думаю что абракадабру писать в сообщениях не получится, т.к. скорее всего будет модерироваться...
Спустя 56 минут, 42 секунды (13.08.2011 - 10:01) qaz333 написал(а):
ааа, всё, дошло чего мой код неработает,
поле
тоже меняется))
скрипт для бота, который будет сам общатся на форуме, walerus большое вам спасибо за активную потдержку +1 :)
поле
<input type='hidden' name='auth_key' value='0b636b48819787da8b5fa48c2c27185b' />
тоже меняется))
скрипт для бота, который будет сам общатся на форуме, walerus большое вам спасибо за активную потдержку +1 :)
Спустя 3 минуты, 56 секунд (13.08.2011 - 10:05) qaz333 написал(а):
[QUOTE=walerus,13.08.2011 - 06:04] [QUOTE=kirik,13.08.2011 - 01:59]
Ну никто не мешает использовать скрипт другим, есть желание - пользуйтесь, но логином и созданием темы, я так думаю не закончится скрипт, еще нужно формировать тему сообщения, само сообщение и еще кучу всего )), думаю что абракадабру писать в сообщениях не получится, т.к. скорее всего будет модерироваться...
[/QUOTE]
всё нормально он будет писать, я всё до мелорчей продумал, до того пока небыло етой проблемы скрипт стбильно 50 с копейками центов накаждом из 5ти форумов набирал
а ето за день почти 3 бакса, за ничего неделая, так как скритп сам запускался кроном))
Ну никто не мешает использовать скрипт другим, есть желание - пользуйтесь, но логином и созданием темы, я так думаю не закончится скрипт, еще нужно формировать тему сообщения, само сообщение и еще кучу всего )), думаю что абракадабру писать в сообщениях не получится, т.к. скорее всего будет модерироваться...
[/QUOTE]
всё нормально он будет писать, я всё до мелорчей продумал, до того пока небыло етой проблемы скрипт стбильно 50 с копейками центов накаждом из 5ти форумов набирал
а ето за день почти 3 бакса, за ничего неделая, так как скритп сам запускался кроном))
Спустя 2 часа, 36 минут, 59 секунд (13.08.2011 - 12:42) alexbel2404 написал(а):
ну тогда с тебя процент
