Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Парсинг данных с сайта. (https://javascript.ru/forum/misc/29971-parsing-dannykh-s-sajjta.html)

goloveychuk 19.07.2012 14:01

Парсинг данных с сайта.
 
Пишу расширение для хрома, нужна функция на 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 присвоить переменной. Спасибо.

Deff 19.07.2012 14:20

<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>

goloveychuk 19.07.2012 15:11

Скрипт выполняется не на сайте, потому
var a=parseInt(document.getElementById('xxx-1').innerHTML);

не подходит. Или я чегото не понял.
Как получить html код в переменную.

Deff 19.07.2012 16:21

Цитата:

Сообщение от goloveychuk
Скрипт выполняется не на сайте, потому

1. А где выполняется ?
2. Есть ли скриптовый доступ к данному сайту http://ukr-games.com/ (установки своих скриптов
3.

goloveychuk 19.07.2012 16:32

Это расширение для хрома, выполняется на клиенте.
Я пока нашел как достать штмл код со страницы. Осталось написать выражение.
<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>

Deff 19.07.2012 16:51

goloveychuk,
Приведите длинный код - (вместе с кодом, обрамляющим данную ссылку
<br><a href="http://forums.ukr-games.com/search.php?do=getnew" data-bitly-type="bitly_hover_card">Новые сообщения</a>: 0<br>

goloveychuk 19.07.2012 17:10

<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>

Deff 19.07.2012 17:23

<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>

goloveychuk 19.07.2012 17:26

спасибо большое, работает!


Часовой пояс GMT +3, время: 00:18.