нужно написать скрипт, который может загрузить кусок сайта, начинающийся с тега <tag xxxfasq
и заканчивающийся на </tag xxxfasq>
как это сделать?
Спасибо!
Спустя 1 минута, 54 секунды (26.09.2011 - 06:46) inpost написал(а):
file_get_contents('ссылко');
Далее регуляркой preg_match.
Далее регуляркой preg_match.
Спустя 2 минуты, 7 секунд (26.09.2011 - 06:48) stas90 написал(а):
<?php
$url = "http://www.site.ru";
$unique_start = "<h3>";
$unique_end = "</h3>";
function weather($url, $unique_start, $unique_end) {
$code = file_get_contents($url);
preg_match('/'.preg_quote($unique_start,
'/').'(.*)'.preg_quote($unique_end, '/').'/Us', $code, $match);
return $match[1];
}
echo weather($url, $unique_start, $unique_end); ?>
вместо site.ru можете указать любой адрес сайта, этот скрипт показывает погоду
скорее всего запрос file_get_contents блокируется большинством серверов
Спустя 21 минута, 27 секунд (26.09.2011 - 07:09) inpost написал(а):
Это вопрос или утверждение? Вроде отлично работает file_get_contents Ну если твой сервер не внесли в спам-лист из-за слишком частых обращений.
Спустя 14 минут, 1 секунда (26.09.2011 - 07:23) stas90 написал(а):
это предположение, попробуйте мой скрипт, почему-то он не работает ни на одном из сайтов...
Спустя 5 минут, 38 секунд (26.09.2011 - 07:29) inpost написал(а):
$page = file_get_contents("http://ip-whois.net/ip_geo.php?ip=".$info['intIp']); // твой IP подставь.
$page = iconv('cp1251', 'utf-8', $page);
preg_match('|Страна: (.*?)<br>|ius',$page,$fulltext['country']);
preg_match('|Регион: (.*?)<br>|ius',$page,$fulltext['region']);
preg_match('|Город: (.*?)\"|ius',$page,$fulltext['city']);
$info['country'] = $fulltext['country'][1];
$info['region'] = $fulltext['region'][1];
$info['city'] = $fulltext['city'][1];
print_r($info);
Вот запустил, все норм работает.
Спустя 18 минут, 14 секунд (26.09.2011 - 07:47) stas90 написал(а):
как оказалось, проблема была в том, что я не правильно ставил теги начала и конца
сейчас другая проблема, результат выводится в непонятной кодировке
вот пример:
"ааа "ааОаБаИаКаОаМ-ааОаВаОбаИаБаИббаК" (ааЕаГаАаЄаОаН аЁаИаБаИбб) аЁаАаЙб"
делаю так:
пока iconv закомментирован - результат есть, если его раскомментировать - выводится пустая страница
сейчас другая проблема, результат выводится в непонятной кодировке
вот пример:
"ааа "ааОаБаИаКаОаМ-ааОаВаОбаИаБаИббаК" (ааЕаГаАаЄаОаН аЁаИаБаИбб) аЁаАаЙб"
делаю так:
<?php
$url="http://site.ru";
$unique_start = " <table cellpadding=\"4\" cellspacing=\"0\" style=\"width: 100%\">";
$unique_end = "</table>";
function weather($url, $unique_start, $unique_end) {
$code = file_get_contents($url);
//$code = iconv('cp1251', 'utf-8', $code);
preg_match('/'.preg_quote($unique_start,
'/').'(.*)'.preg_quote($unique_end, '/').'/Us', $code, $match);
return $match[1];
}
echo weather($url, $unique_start, $unique_end); ?>
пока iconv закомментирован - результат есть, если его раскомментировать - выводится пустая страница
Спустя 6 минут, 9 секунд (26.09.2011 - 07:53) inpost написал(а):
stas90
Сначала file_get_contents. Полученную страницу выведи через echo. Если кодировки не совпадают (твои с тем сайтом), то через iconv поменяй кодировку переменной $code.
Посмотри кодировку своего сайта и кодировку того, с которого берёшь данные.
Сначала file_get_contents. Полученную страницу выведи через echo. Если кодировки не совпадают (твои с тем сайтом), то через iconv поменяй кодировку переменной $code.
Посмотри кодировку своего сайта и кодировку того, с которого берёшь данные.
Спустя 6 минут, 15 секунд (26.09.2011 - 07:59) stas90 написал(а):
Огромное спасибо за помощь!!!
Все получилось,
поставил: iconv('utf-8', 'cp1251', $code);
PS: Жалко плюсануть не могу (т.к. меньше 10 постов)...
Все получилось,
поставил: iconv('utf-8', 'cp1251', $code);
PS: Жалко плюсануть не могу (т.к. меньше 10 постов)...
Спустя 11 минут, 32 секунды (26.09.2011 - 08:11) inpost написал(а):
stas90
Куда уж больше! Лучше приходи ещё, спрашивай вопросы Новые люди куда приятнее, чем новые плюсики
Куда уж больше! Лучше приходи ещё, спрашивай вопросы Новые люди куда приятнее, чем новые плюсики