Парсинг данных с сайта.
Пишу расширение для хрома, нужна функция на js (в ней я вообще дуб). Есть адрес сайта http://ukr-games.com/ , нужно:
1) присвоить переменной его штмл код 2) есть код елемента: <br><a href="http://forums.ukr-games.com/search.php?do=getnew" data-bitly-type="bitly_hover_card">Новые сообщения</a>: 0<br> Нужно число 0 присвоить переменной. Спасибо. |
<br><a href="http://forums.ukr-games.com/search.php?do=getnew" data-bitly-type="bitly_hover_card">Новые сообщения</a>: <span id="xxx-1">0</span><br> <script type="text/javascript"> var a=parseInt(document.getElementById('xxx-1').innerHTML); alert(a) </script> |
Скрипт выполняется не на сайте, потому
var a=parseInt(document.getElementById('xxx-1').innerHTML); не подходит. Или я чегото не понял. Как получить html код в переменную. |
Цитата:
2. Есть ли скриптовый доступ к данному сайту http://ukr-games.com/ (установки своих скриптов 3. |
Это расширение для хрома, выполняется на клиенте.
Я пока нашел как достать штмл код со страницы. Осталось написать выражение. <script type="text/javascript" src="jquery.js"></script> <script type="application/javascript"> window.onload = function() {// при загрузке расширения $.get("http://ukr-games.com/index.php", function(html){// достаем код в переменную html //тут надо регулярное выражение. chrome.browserAction.setBadgeText({text: number}); вывод к-ва на иконке расширения }); } </script> |
goloveychuk,
Приведите длинный код - (вместе с кодом, обрамляющим данную ссылку <br><a href="http://forums.ukr-games.com/search.php?do=getnew" data-bitly-type="bitly_hover_card">Новые сообщения</a>: 0<br> |
<span class="smallfont">Добро пожаловать, <strong>%username%</strong><br> Ваш последний визит: 19.07.12 в <span class="time">15:49</span><br> <a href="http://forums.ukr-games.com/search.php?do=getnew" data-bitly-type="bitly_hover_card">Новые сообщения</a>: 1<br> <a href="http://forums.ukr-games.com/blabl" onclick="return log_out('Вы действительно хотите выйти?')" data-bitly-type="bitly_hover_card">Выход</a></span> |
<script type="text/javascript" src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ $.get("http://ukr-games.com/index.php", function(html){ var a=$(html).find("span.smallfont:contains('Ваш последний визит:')").text(); //тут надо регулярное выражение. var b=a.replace(/^[\s\S]*?сообщения: (\d+)[^\d][\s\S]*$/g,'$1') alert(b) //chrome.browserAction.setBadgeText({text: number}); }); }); </script> |
спасибо большое, работает!
|
Часовой пояс GMT +3, время: 12:34. |