LoliDeveloper, в магистратуру иногда общие формальные вопросы) в моем экзамене в магистратуру (тоже прикладная информатика) во вступительных был тест по знанию того как вызвать диспетчер задач без ctrl + alt + delete и чем отличается дискета от жесткого диска.
Такой же роутер. На 4ый год стал глючить. Перепрошил в dd-wrt. Еще три года работал без нареканий. Сменил только потому, что диапазон забит и из-за этого скорость по Wi-Fi плохая вечером (полсотн и Wi-Fi сетей в радиусе приема).
Сейчас верой и правдой трудится в загародном доме в режиме Wi-Fi адаптера для телевизора.
Ilia Malashko, если делать на lumen, что-то большее, чем чисто API - возникает больше проблем чем пользы. Особенно в последних версиях. Опять таки, всегда можно сделать прототип на laravel, а потом уже оптимизировать до lumen.
zx5zx6, в краткосрочном периоде максимальная выгода будет от продолжения углубления в Ноду. В долгосрочном периоде, ограничиваясь в ноде Вы пропускаете мимо определенные значимые части фундаментального программирования. Поэтому придется изучать другой язык, чтобы латать эти дыры.
В каком порядке - решать Вам. Лучше всего смотреть по вакансиям и какие компания есть в Вашем городе. Какие проекты есть прямо сейчас.
Особой фундаментальной разницы между языками нет. Вы всегда будете упираться в производительности и качества кода в более фундаментальные вещи, не привязанные к языкам. Алгоритмы, архитектура, базы данных и прочее.
В конце концов язык программирования именно и называется языком программирования потому что это средство выражения мыслей определяемых фундаментальным знанием.
Никита Соколов, ничего странного. page.evaluate() возвращает только сереализуемые данные. DOM элементы не сериализуемые. Поэтому возвращается пустой объект. Попробуйте в консоли засериализовать результат
поиска по DOM - будет тот же самый пустой объект.
Если бы элемент не находился на странице - было бы null. Просто поменяйте id для проверки.
Поэтому нужно или конкретизировать, какие именно поля вы хотите вернуть (как в примере - возвращается type) или использовать другие методы puppeteer для возврата объекта.