Парсер третий: Selenium

Jun 21, 2018 23:09


Selenium - это чисто точка входа в удивительный мир возможностей использовать разные драйверы.

Хром и мозилла завелись сразу.

PhantomJS ругнулся на ghostdriver, зашитый в его кишки. В кач-ве решения предлагают пересобрать его из исходников, захачив ghostdriver.

HtmlUnit валится с ошибкой, вах, не могу поменять read-only поле constructor, исполняя ( Read more... )

fail, headless, web programming

Leave a comment

Comments 4

enternet June 21 2018, 20:32:50 UTC
puppeteer
Headless Chrome

Reply

swamp_agr June 21 2018, 21:02:19 UTC
Завтра как раз проверю случай с кукисами и 50 URL-ами, если не вылетит капча и взлетит - поставлю headless chromium на сервер, чего уж тут поделать...

Reply


nponeccop June 24 2018, 15:52:14 UTC
Почитал внимательнее - оказалось что "различные драйверы" - это уже не просто "локальные NIH селениумовские драйверы". Это WebDriver API в статусе W3C Recommendation https://www.w3.org/TR/webdriver/ , реализуемый вендорами браузеров (включая внезапно Эдж https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/)

То есть любой future proof тест-фреймворк должен работать с браузерами через этот стандартный интерфейс.

Но это для нужд тестинга конечно, парсер (я слежу за темой) - это несколько другая область. Из не упомянутого - см. например https://www.npmjs.com/package/jsdom

Reply

swamp_agr June 24 2018, 16:40:57 UTC
Ага, сам в шоке, W3C.

Парсер - это историческое название web scrapper тулы, пытавшейся обойти целевой ресурс, который сначала был выкуплен Яндексом, а потом встроил в себя защиту от нецелевого опроса, которая раньше обходилась Фантомом, а теперь - по-видимому, хромиумом/хромом. Делаю proof-of-concept "оффлайн" опроса. Если сработает - переделаю чуть логику, буду еженедельно свежие данные подвозить..

Ну и не охота хром на сервер тащить. Т.е. теперь всё усложняется тем, что есть ES6 скрипт, который после выполнения в браузере или фантоме должен устанавливать периодически конкретную куку, которую мне не следует терять, иначе "привет капча". Фантом так уже не умеет. Хром, вроде, может.

Reply


Leave a comment

Up