Как извлечь ссылки JavaScript в документе HTML? - PullRequest
0 голосов
/ 22 мая 2009

Я пишу небольшой веб-паук для веб-сайта, который использует много JavaScript для ссылок:

<htmlTag onclick="someFunction();">Click here</htmlTag>

где функция выглядит так:

function someFunction() {
  var _url;
  ...
  // _url constructed, maybe with reference to a value in the HTML doc
  // and/or a value passed as argument(s) to this function
  ...
  window.location.href = _url;
}

Каков наилучший способ оценки этой функции на стороне сервера, чтобы я мог создать значение для _url?

Ответы [ 4 ]

2 голосов
/ 22 мая 2009

Вы также можете использовать env.js и rhino для фактической оценки JavaScript в html и обнаружения изменений в объекте местоположения после ручного запуска события click.

0 голосов
/ 22 мая 2009

Это должен быть беспорядок. Но это зависит от множества параметров:

  1. Где хранится ссылка? внутри элемента, в JavaScript вар и т.д ...
  2. Всегда ли функция javascript свой?

Некоторые подсказки, которые могут помочь, должны просто проанализировать ваш html и использовать регулярные выражения для перехвата http-ссылок, где onclick = "someFunction ();" атрибут присутствует.

0 голосов
/ 22 мая 2009

Если вам нужна обработка на стороне сервера, вам нужно:

  1. Выполнить обработку до того, как контент будет доставлен пользователю, и включить его вывод в ответ, или
  2. Используйте что-то вроде AJAX, чтобы сделать новый запрос обратно на сервер
0 голосов
/ 22 мая 2009

Не совсем уверен, что вы пытаетесь достичь.

Если вам нужно отправить эти значения на сервер для обработки, Ajax будет вашим лучшим вариантом.

...