Поскольку вы выбираете опцию с определенным c идентификатором, она будет вести себя точно так же, как и сама. Кстати, вы можете использовать
const value = await page.evaluate(() => {
innerValue = document.querySelector('your selector here').value;
return innerValue;
});
EDIT : всякий раз, когда вы имеете дело с самим содержимым dom, например как получение innerText
тега или значения селектора и не выполнение действий, таких как ввод или щелчок, предпочтительно использовать метод evaluate
, потому что он имеет лучшую производительность и легче получить именно то, что вы хотите, в браузере content.
Использование $, $$, $ eval, $$ eval, et c., вернет сложный объект, и чтобы получить то, что вы хотите, вам нужно будет обработать его в контексте узла.
-
EDIT 2 : если по какой-либо другой причине вы предпочитаете использовать методы $, $$, $ eval или $$ eval, имейте в виду, что single $ выполняет действие querySelector (), а double $ выполняет querySelectorAll (). QuerySelector возвращает только первый элемент, который соответствует вашему селектору, а querySelectorAll возвращает все элементы, соответствующие вашему селектору. С учетом сказанного, когда вы используете $ an $ eval, вы не должны использовать нотацию индекса массива, поскольку возвращается только один элемент