Я пытаюсь создать веб-скребок в узле JS, и я попал в блокпост. Мне нужно нажать на кнопку НО, если я не ошибаюсь, Node фактически не отображает веб-страницу, как браузер, поэтому я не могу использовать селектор или X-Path.Узел JS Нажмите кнопку на странице
Как можно было бы нажать конкретную кнопку со значением «да», если я не могу использовать селектор или X-путь? Нет единственного идентификатора для кнопки «Да».
Я прошу об этом, потому что я хочу разобрать определенную веб-страницу, но я перенаправляюсь на страницу, которая просит меня нажать две кнопки. Нажатие «Да» приведет меня на страницу, которую я хочу. Нажатие «Нет», очевидно, помешает мне идти вперед.
Есть ли способ сделать то, что я хочу, в пределах ограничений на узле, не прибегая к чему-то вроде JSDOM?
Вот часть HTML я работаю с:
<div class="buttons">
<button class="c-btn c-btn-primary" type="submit" name="bigbutton" value="no">no thank you</button>
<button class="c-btn c-btn-primary" type="submit" name="bigbutton" value="yes">continue</button>
</div>
Я пытался использовать что-то вроде этого:
document.getElementByID("selector").click()
но был возвращен с "ReferenceError: документ не определен.
Возможный дубликат [Почему у node.js нет родной DOM?] (Http://stackoverflow.com/questions/6657216/why-doesnt-node-js-have-a-native-dom) –
Вы не можете «нажимать» что-либо, когда имеете дело со сломанным контентом на веб-сервере, возможно, вам нужен безгласный браузер или бот, а не – adeneo
. Можно ли заранее узнать URL-адрес перенаправленной страницы и убрать узел прямо? –