Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

12.09.2008, 13:57
|
|
Постоянный
Регистрация: 28.09.2006
Сообщений: 724
Провел на форуме: 1251165
Репутация:
703
|
|
На счёт ленты rss
Думаю что правильно выбрал раздел для темы
вобщем такая проблема, у меня комфорт чат в локалке
под него написан бот который читает файл default.xml так вот вопрос как скачать с rss канала .xml файл
а именно мне нужен http://img.lenta.ru/r/EX/import.rss вот этот канал ну или какой либо другой новосной сайт с мировыми новостями.
Кто поможет "+++++" в репу
заранее спасибо.
|
|
|

12.09.2008, 14:06
|
|
Members of Antichat - Level 5
Регистрация: 01.04.2007
Сообщений: 1,268
Провел на форуме: 10046345
Репутация:
4589
|
|
system('wget http://img.lenta.ru/r/EX/import.rss --output-document default.xml');
|
|
|

12.09.2008, 14:44
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме: 1301036
Репутация:
1334
|
|
Канал RSS:
PHP код:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="0.92">
<channel>
<title>// титл</title>
<link>// ссылка </link>
<language>en</language>
<item>
<title>//титл</title>
<description>
//описание
</description>
<link>// ссылка</link>
</item>
<item>
<title>// титл</title>
<description>………</description>
<link>// ссылка</link>
</item>
</channel>
</rss>
Делаем страницу PHP, которая форматирует каждый RSS канал как HTML.
PHP код:
<?php // Загрузим и проанализируем XML-document ?>
<html xml:lang="en" lang="en">
<head>
<title><?php // Заголовок будет читаться из RSS ?></title>
</head>
<body>
<h1><?php // Заголовок снова будет читаться из RSS ?></h1>
<?php
// Здесь мы поместим цикл, чтобы включить заголвок каждого элемента и описание
?>
</body>
</html>
Полная программа считывания PHP RSS:
PHP код:
<?php // Load and parse the XML document
$rss = simplexml_load_file('http://partners.userland.com/nytRss/nytHomepage.xml');
$title = $rss->channel->title;
?>
<html xml:lang="en" lang="en">
<head>
<title><?php echo $title; ?></title>
</head>
<body>
<h1><?php echo $title; ?></h1>
<?php
// Здесь мы поместим цикл, чтобы включить заголовок элемента и описание
foreach ($rss->channel->item as $item) {
echo "<h2><a href='". $item->link. "'>". $item->title. "</a></h2>";
echo "<p>". $item->description. "</p>";
}
?>
</body>
</html>
|
|
|

12.09.2008, 17:23
|
|
Участник форума
Регистрация: 19.08.2008
Сообщений: 104
Провел на форуме: 573945
Репутация:
13
|
|
cash$$$, последний скрипт который ты написал, будет считывать rss с нужного мне сайта !? я так понял)
у меня ошибка вылазит
Fatal error: Call to undefined function simplexml_load_file() in /home/winston/data/www/мой домен/rss.php on line 2
|
|
|

12.09.2008, 17:50
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме: 1301036
Репутация:
1334
|
|
Сообщение от Winst0n
cash$$$, последний скрипт который ты написал, будет считывать rss с нужного мне сайта !? я так понял)
у меня ошибка вылазит
Fatal error: Call to undefined function simplexml_load_file() in /home/winston/data/www/мой домен/rss.php on line 2
Не все каналы RSS так хорошо сформированы, как это должно быть. Поэтому для исправления ошибки, попробуй так:
PHP код:
<?php
$rss = simplexml_load_file('//ссылка на rss');
if ($rss) {
foreach ($rss->xpath('//title') as $title) {
echo "<h2>". $title. "</h2>";
}
}
else {
echo "Упс! Ввод деформирован!";
}
?>
Другая распространенная ошибка случается, когда документ хорошо сформатирован, но не содержит те элементы, которые нужно найти. Происходит, например, с таким выражением $doc->rss->channel->item->title, когда элементная группа не имеет заголовка. Самый простой подход – всегда обращаться с возвращаемым функцией значением как с массивом данных и заключать его в цикл. Если знать, что первый элемент в документе, даже если там имеется больше чем один, то можно запросить его через индекс, начинающийся с нуля. Например, для запроса заголовка первой группы элементов, можно написать:
$doc->rss->channel->item[0]->title[0]
Если первая группа элементов отсутствует, или не имеет названия, она рассматривается так же, как и любой другой, находящийся за установленными рамками индекс, в массиве PHP. То есть результат равен нулю, который превращается в пустую строку.
Распознавание и отклонение неожиданных форматов, с которыми ты не готов работать, обычно является проверкой на правильность парсера XML. SimpleXML не может проверить относительно шаблона DTD (DTD) или схемы данных. Он проверяет только на формальную правильность.
|
|
|

12.09.2008, 18:09
|
|
Участник форума
Регистрация: 19.08.2008
Сообщений: 104
Провел на форуме: 573945
Репутация:
13
|
|
все таже ощибка... к моему сожалению пхп вапше незнаю.... только элеметарные веши, как движок устоновит и тд 
|
|
|

13.09.2008, 09:08
|
|
Постоянный
Регистрация: 28.09.2006
Сообщений: 724
Провел на форуме: 1251165
Репутация:
703
|
|
всем спасибо за помощь
ставлю "+" как и обещял
|
|
|

13.09.2008, 09:40
|
|
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме: 6490435
Репутация:
2290
|
|
все таже ощибка... к моему сожалению пхп вапше незнаю.... только элеметарные веши, как движок устоновит и тд
Виноват одмин твоего хостинга. Пусть модуль доставит.
|
|
|

14.09.2008, 07:59
|
|
Постоянный
Регистрация: 28.09.2006
Сообщений: 724
Провел на форуме: 1251165
Репутация:
703
|
|
кстати сел основательно
выудил
http://img.lenta.ru/r/EX/import.xml
неудобство в том только что нада написать скрипт чтоб постоянно выкачивал данный файл в 8 00 утра и заменял старый на новый
|
|
|

14.09.2008, 10:55
|
|
Участник форума
Регистрация: 04.07.2007
Сообщений: 111
Провел на форуме: 486797
Репутация:
102
|
|
спасибо, тоже было интересно
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|