Тонкости XHE (кряк 4.0.14)

Discussion in 'SЕО - тонкости, методы раскрутки' started by lex669, 25 Sep 2015.

  1. lex669

    lex669 New Member

    Joined:
    25 Sep 2015
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Решение проблемы с методом $browser->wait_for(), в тех случаях, когда скрипт выполняется, не дожидаясь остановки браузера, например, как здесь:

    <?php

    $xhe_host ="127.0.0.1:7012";

    // The following code is required to properly run XWeb Human Emulator
    require("../Templates/xweb_human_emulator.php");

    // navigate to google
    $browser->navigate("http://mail.ru");
    // wait on browser
    $browser->wait_for(60,3);

    $anchor->click_by_inner_text("Регистрация в почте",false);
    $browser->wait_for(30,3);

    $input->set_value_by_number(6,"Aeaenae");
    sleep(1);

    // Quit
    $app->quit();
    ?>

    При первом запуске все норм, при всех последующих второй wait_for, после клика по ссылке, не срабатывает, скрипт пролетает, не дождавшись загрузки страницы. Есть 2 способа решить эту проблему. Первый, очищать кэш при каждом выполнении, $browser->clear_cash(), не знаю, почему, но работает, минусы в снижении скорости работы и повышенном потреблении трафика. Второй способ, магический, перед каждым проблемным wait_for ставить sleep(1), можно больше 1, можно меньше (используя usleep), у кого как. Насколько я понимаю, баг этот связан с синхронизацией браузера и php в XHE. Вот такая история. Надеюсь, кому-то пригодится.
     
    #1 lex669, 25 Sep 2015
    Last edited: 25 Sep 2015