Перейти к содержимому

kupurim

Регистрация: 18 янв 2019
Offline Активность: 28 фев 2019 08:59
*----

Мои сообщения

В теме: Селениум не корректно работает на сервере

25 января 2019 - 09:08

 

Прошу подскажите что может быть.

погоди, а сами запросы сайта смотрел? может проще апи запросом все вытянуть и не мучать селениум? Я полагаю, что все матчи подтягиваются, просто не все на странице, повторив запрос к их апи можно их все получить и скорее всего сразу в жсон формате - парсь потом как хочешь

 

Да, я об этом уже думал. Но там приходит далеко не json, а какая-то непонятная строка, вот кусок с ответа:

SA÷1¬~ZA÷АВСТРАЛИЯ: Лига А¬ZEE÷OjWW1naM¬ZB÷24¬ZY÷Австралия¬ZC÷tdBtmknB¬ZD÷p¬ZE÷QismaKZH¬ZF÷0¬ZO÷1¬ZG÷1¬ZH÷24_OjWW1naM¬ZJ÷2¬ZL÷/football/australia/a-league/¬ZX÷00Австралия   009тралия0000000000186000Лига А 

И как его привести в нормальный вид не понятно. А копать весь js код самого сайта не очень хочется (на первый взгляд там какая-то магия происходит, думаю проще настроить сам селениум).


В теме: Селениум не корректно работает на сервере

23 января 2019 - 08:23

Прошу подскажите что может быть.


В теме: Селениум не корректно работает на сервере

21 января 2019 - 13:00

Сделайте размер окна такой же как у вас на десктопе. - --window-size=1024,768

 

Устанавливал 1920х1080, выдало ошибку что функция js не определена (4 из 5 раз, на 5-й пошло дальше и достало половину матчей из всех, пришлось сервер перезапустить).

Так же попробовал  1620х800, так же половину только достает. 


В теме: Селениум не корректно работает на сервере

21 января 2019 - 08:56

Вот настройки селениума:

$host = 'http://localhost:4444/wd/hub'; // this is the default 
$capabilities = DesiredCapabilities::htmlUnitWithJS();

// For Chrome
$options = new ChromeOptions();  
$prefs = array('download.default_directory' => '/var/www/data/tmp_selenium/');
$options->setExperimentalOption('prefs', $prefs);
$options->addArguments(array(  
    '--window-size=1024,768', '--headless', '--no-sandbox'
)); 
$capabilities = DesiredCapabilities::chrome(); 
$capabilities->setCapability(ChromeOptions::CAPABILITY, $options);
$driver = RemoteWebDriver::create($host, $capabilities, 5000);

Так же пробовал версию 3.8.0 и это не помогло.