Регистрация    Забыли пароль?        Правила форума    FAQ (читать перед созданием новой темы)
Имя   Пароль  запомнить
  
Просмотр темы
Вернуться на сайт: PHP-Fusion SF Russian Support Site

Форум поддержки PHP-Fusion SF | PHP-Fusion SF - Разное | Вопросы / Жалобы / Предложения
# 1 Тема: Парсер погоды. Переделать из под ДЛЕ
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 30 Сентября 2008, 12:50:06
Вот нашел парсер погоды http://dle.in.ua/moduls/236-modul-pogody-dlja-dle-5.x-i-6.x.html
Код приведен ниже. Можно его переделать под фьюжн? НАпример из под слаеда это довольно просто, а вот из под ДЛЕ хз. Просто он довольно хоший и кэширует данные:

Граббер погоды с gismeteo.ru

Текущие возможности данного модуля погоды:
- прост в установке и настройке...
- из настроек:
--- выбор города
--- выбор параметров вывода информации (температура, осадки, ветер и т.д.)
--- выбор времени обновления информации
- данные кэшируются, дабы не нагружать внешний канал и для быстрого исполнения скрипта
- не использует БД.


$weather = weather(12345); //здесь цыфры показывают на город, их можно выяснить на gismeteo.ru

function weather($city) {

$loc_file = ENGINE_DIR.'/cache/system/weather.php';

$life_time = time() - @filemtime($loc_file);
if ((file_exists($loc_file)) && ($life_time<10400)){ // 10400 - это время обновления иформации в секундах (в данном случае - 3 часа)
$fp = fopen($loc_file, 'r');
if (filesize($loc_file) >0){
$text = fread($fp, filesize($loc_file));
}else{
$text = '<span class="localfilesizeisnull">Waiting for data</span>';
}
fclose($fp);
if (strlen($text) > 20) return $text;
}

$sContent = file_get_contents('http://informer.gismeteo.ru/text/'.$city.'-1.JS');

if (strlen($sContent) < 20) {
// не сохраняем файл
@touch($loc_file);
return $sContent;
}

$tags = explode('<', $sContent);

// далее формируются данные о погоде. те, которые Вам не нужны, необходимо закомментировать...
$sContent =strip_tags('<' . $tags[11]); //город
$sContent.=" на ".strip_tags('<' . $tags[18]); //дата, день
$sContent.=" : температура воздуха ".strip_tags('<' . $tags[32]); //темпереатура воздуха
$sContent.=", ".strip_tags('<' . $tags[24]); //ясно-пасмурно
$sContent.=" ".strip_tags('<' . $tags[25]); //осадки
$sContent.=", ветер ".strip_tags('<' . $tags[40]); //ветер

$fp = @fopen($loc_file, 'w');
if ($fp){
fwrite($fp, $sContent);
fclose($fp);
}
return $sContent;
}




[Изменил(а) yury, 30 Сентября 2008, 12:51:00]

--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 2  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 30 Сентября 2008, 13:11:37
Смысл кэшировать погоду какой? Сервер загружать свой только.


--------------------
Retired
^ наверх ^
# 3  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 01 Октября 2008, 00:08:15
наоборот меньше нагрузка в общем будет. Т.е не постоянно ее парсить с того сайта, а она один раз скэшируется и уже будет грузиться с сервака. через 4 часа еще раз. и так далее.


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 4  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 01 Октября 2008, 13:42:55
В итоге грузится с твоего сайта - 1 раз + с того сайта 1 раз в 4 часа + грузят все клиенты с твоего серва = нагрузка на твой серв.

Имхо смысл имеет только когда серв подключен к инету, а у людей помегабайтовая оплата - тут оно удобно и нужно.


--------------------
Retired
^ наверх ^
# 5  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 02 Октября 2008, 00:06:22
так любая инфа грузится с моего сервака, правильно. И если эта инфо будет грузится, то это незначительно.
У юзверей помегобайтовая оплата, ты прав)


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 6  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 02 Октября 2008, 11:07:57
Уболтал smiley
что именно не получается сделать?


--------------------
Retired
^ наверх ^
# 7  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 02 Октября 2008, 11:17:46
если честно, то не пойму даже что надо поменять под фьюжн. посмотрел переменные заданы и они в теории выводят то что надо.
Впринципе не пойму...

Вот например знаю что у слаеда например надо сменить переменную contetnt на echo
а здесь...


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 8  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 02 Октября 2008, 11:36:52
Вроде это функция чистая, сама принимает файл, пишет, и читает из него

меняем строчку на
$loc_file = BASEDIR.'weather.php';

Теоретически все! А ну еще вызвать функцию в нужном месте.


--------------------
Retired
^ наверх ^
# 9  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 02 Октября 2008, 12:23:15
какую строчку то меняем?)


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 10  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 02 Октября 2008, 12:30:33
Или может можно вот этот парсер:

<?
echo "<table width=100% border=\"0\" cellpadding=\"2\" cellspacing=\"1\" class=\"bgcolor4\"><tr><th colspan=3><a href=\"">WEATHER</a></th></tr><tr class=\"bgcolor1\" height=\"130\"><td>";
$nwurl = "http://rp5.ru/html.php?id=4583&bg=%23ffffff&c=%2317405e&f=Verdana&s=13&sc=4";
$math = @file_get_contents($nwurl);
echo str_replace("body", "div", $math);
echo "</td></tr></table>";
?>



Заставить кэшировать инфу и обновлять ее только раз в 4 часа.


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
# 11  
Psc
SF Team

Avatar пользователя

Psc

SF Support Team

Почетный SF

Сообщений: 2515
Откуда: As is
Зарегистрирован: 10 Ноября 2007, 13:15:07
Сказали спасибо 353 раз
Статус: offline
Опубликовано 02 Октября 2008, 13:39:17
Я делал но без файла, токо картинкой, и выкладывал уже код.
Возьми кэирующую часть(например с первого кода) и совмести с этой, будет тебе погода локальная.


--------------------
Retired
^ наверх ^
# 12  
yury
Пользователь

Avatar пользователя

Магистр Дизайна и Верстки

Почетный SF

Сообщений: 1201
Зарегистрирован: 11 Января 2008, 15:57:19
Сказали спасибо 37 раз
Статус: offline
ICQ статус 371635405
Опубликовано 02 Октября 2008, 13:50:30
хм...хм...знал бы как не писал) еще раз говорю, я дизайнер и верстальщик и немного прогер. Конечно уже понимаю, что надо вплотную заняться программированием, но все никак не хватает пока времени. И так порой сплю по 6 часов.


--------------------
Нужен сайт или красивый оригинальный дизайн?
Только лучший и оригинальный дизайн для php-fusion 6, 7, SF!
www.artcell.ru-правильный выбор!!!
^ наверх ^ 371635405 www.artcell.ru
Перейти на форум:


94,160,664 уникальных посетителей
сейчас: 29 Марта 2024, 08:53:15
Генерация страницы: 0.65 сек.