2013-02-24 3 views
0

Прошу прощения, если заголовок вводит в заблуждение.Создание запроса JavaScript через Ruby

Я пытаюсь очистить сайт своей работы до обновлений по моему графику. Я использую Ruby with Mechanize. Я успешно зарегистрировался на веб-сайте моей работы, однако, после входа в систему, все ссылки, идущие вперёд, - это ссылки на JavaScript, с которыми Mechanize не очень хорошо работает.

Проведя некоторые исследования, я увидел несколько предложений по подобным проблемам; Вместо того, чтобы нажимать на ссылку, я могу эмулировать запрос, который делает ссылка, хотя я не уверен, как я мог это сделать.

код за ссылку составляет:

<a href="JavaScript:document.getElementById('schedForm').submit()">My Work Schedule </a> 

Как я мог бы решить это в Ruby? Какие-либо предложения?

ответ

2

Когда ссылка нажата, она отправляет форму. Чтобы сделать то же самое с Mechanize:

page.form(:id => 'schedForm').submit 
+0

Не могу поверить, что все было так просто. Огромное спасибо. Я собирался сделать этот проект много раз сложнее. – Rickmasta

+0

Да, как правило, это простое решение. Отказ и переход к watir - почти всегда ошибка. – pguardiario

0

Насколько я знаю, Mechanize не может выполнять вызовы JavaScript. Если вам нужно взаимодействовать с JavaScript, я бы порекомендовал Watir.

+1

Mechanize может вызвать URL, что JavaScript будет, но он не может интерпретировать JavaScript. Ватир тоже не может, но браузер, которым управляет Ватир, может, и Ватир может спросить браузер, каково его состояние до и после. –

+0

Вы абсолютно правы, я не правильно сформулировал свой ответ. – fmendez

Смежные вопросы