За последние 24 часа нас посетили 200369 программистов и 2074 робота. Сейчас ищет 1901 программист ...

НЕбольшой бот

Тема в разделе "PHP для новичков", создана пользователем vodorod, 16 янв 2011.

  1. vodorod

    vodorod Активный пользователь

    С нами с:
    10 янв 2011
    Сообщения:
    217
    Симпатии:
    0
    Вот код который должен брать случайно страницу, находить на ней определенную ссылку и переходить по этой ссылке скажите что делаю не так?
    Код (Text):
    1.  
    2. <?
    3. $r=rand(1,18);
    4. //include('bd.php');
    5. //$sql="INSERT INTO oshibka(ip) VALUES (1)";
    6. //$res=mysql_query($sql) or die();
    7.  
    8.  $ch = curl_init();  
    9.    $uagent = "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)";
    10.    $url="http://s4.travian.ru/build.php?id=".$r;
    11.  
    12.  curl_setopt($ch, CURLOPT_URL, $url);  
    13.       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    14.           curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    15.       curl_setopt($ch, CURLOPT_HEADER, 0);
    16.       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    17.       curl_setopt($ch, CURLOPT_ENCODING, "");
    18.       curl_setopt($ch, CURLOPT_USERAGENT, $uagent);
    19.       curl_setopt($ch, CURLOPT_TIMEOUT, 120);
    20.       curl_setopt($ch, CURLOPT_FAILONERROR, 1);
    21.       curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    22.       curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies8.txt");
    23.       curl_setopt($ch, CURLOPT_COOKIEFILE,"cookies8.txt");
    24.   curl_setopt($ch, CURLOPT_POST,1);
    25.   curl_setopt($ch, CURLOPT_POSTFIELDS,"name=irube&password=669212&w=&login=1294823900");
    26.  
    27.  
    28.  $output = curl_exec($ch);  
    29.  
    30. curl_close($ch);
    31. if (preg_match ('/\<a\sclass=\"build\"\shref=\"(.*)\".*/', $output)) {
    32.     $b=preg_match_all('/\<a\sclass=\"build\"\shref=\"(.*)\".*/' ,$output,$ab,PREG_SET_ORDER);
    33.     $url1="http://s4.travian.ru/".$ab[0][1];
    34.    
    35.     $ch = curl_init();  
    36.    $uagent = "Mozilla/5.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)";
    37.  
    38.  curl_setopt($ch, CURLOPT_URL, $url1);  
    39.       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    40.           curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    41.       curl_setopt($ch, CURLOPT_HEADER, 0);
    42.       curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    43.       curl_setopt($ch, CURLOPT_ENCODING, "");
    44.       curl_setopt($ch, CURLOPT_USERAGENT, $uagent);
    45.       curl_setopt($ch, CURLOPT_TIMEOUT, 120);
    46.       curl_setopt($ch, CURLOPT_FAILONERROR, 1);
    47.       curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    48.       curl_setopt($ch, CURLOPT_COOKIEJAR, "cookies9.txt");
    49.       curl_setopt($ch, CURLOPT_COOKIEFILE,"cookies9.txt");
    50.    curl_setopt($ch, CURLOPT_POST,1);
    51.   curl_setopt($ch, CURLOPT_POSTFIELDS,"name=irube&password=669212&w=&login=1294823900");
    52.  $output1 = curl_exec($ch);  
    53. curl_close($ch);
    54.     print $output1;  
    55.     print $url1;
    56. } else {
    57.     print "A match was not found.";exit();
    58. }
    59.  
    60.  
    61. ?>
    [/code]
     
  2. vodorod

    vodorod Активный пользователь

    С нами с:
    10 янв 2011
    Сообщения:
    217
    Симпатии:
    0
    ну так что?
     
  3. VItalijs

    VItalijs Активный пользователь

    С нами с:
    17 дек 2008
    Сообщения:
    244
    Симпатии:
    0
    Адрес:
    Рига, Латвия
    а в чем проблема то?
     
  4. vodorod

    vodorod Активный пользователь

    С нами с:
    10 янв 2011
    Сообщения:
    217
    Симпатии:
    0
    проблема в том что сайт не хочет принимать вторую ссылку, на этом сайте ссылка хранящаяся в переменной $ab[0][1], имеет вид dorf1.php?a=16&c=0f40d9 так вот, код 0f40d9 постоянно меняет, раз в несколько секунд. Так почему-то если я возьму скопирую ссылку и вставлю в адресную строку, это засчитывается как действие, а если скрипт "нажимает" почему-то не считается