Компания, с которой я работаю, собирается через редизайн сайта через несколько месяцев, и одна из вещей, в которой мы нуждаемся, - это таблица, содержащая каждый URL каждой страницы на сайте. Тогда оптимально будут столбцы, содержащие значения набора предопределенных переменных JavaScript (в данном случае переменных Omniture, поэтому мы можем гарантировать, что каждая страница будет правильно помечена своим местом в иерархии сайта).Есть ли способ обхода сайта и захвата переменных JavaScript на каждой странице?
Вот пример того, что может быть в HTML для данной страницы:
<script type="text/javascript">
metrics_level2 = "biz";
metrics_level3 = "products";
metrics_level4 = "my_awesome_product";
metrics_pagename = "biz|products|my_awesome_product";
</script>
Я полз сайт с RapidMiner и данные готовы идти, но мой вопрос является наилучшим способом изолировать эти переменные и поместить «metrics_level2», «metrics_level3» и т. д. в свои собственные столбцы. Является ли XPath лучшим способом сделать это? Обычные выражения? Мои попытки с XPath, похоже, содержат все содержимое между тегами, что требует много очистки после факта.
Это рад! Знаете ли вы, что произойдет, если эта конкретная переменная не существует на странице? – denverfone
Это привело бы к ошибке javascript в контексте веб-страницы, и ваша результирующая переменная 'dataFromPage' вернула бы нуль ... вы, вероятно, должны обрабатывать это на странице, хотя' if (typeof metrics_level2! = 'Undefined') ' –