Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Чем получить адреса rss?

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

n0tkn0w

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Чем можно массово чекнуть список url на наличие rss?

Всего записей: 75 | Зарегистр. 07-06-2014 | Отправлено: 00:58 11-11-2014
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
n0tkn0w
простейший скрипт - делает запрос, получает страницу, смотрит наличие
Цитата:
type="application/rss+xml"

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

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 01:12 11-11-2014
n0tkn0w

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Буду благодарен если вы напишите этот простейший скриптик.  
ЗЫ Мне известно про наличие этого атрибута и что можно написать скрипт который будет выдирать адреса лент при его наличии.

Всего записей: 75 | Зарегистр. 07-06-2014 | Отправлено: 01:23 11-11-2014 | Исправлено: n0tkn0w, 01:35 11-11-2014
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
n0tkn0w
ну, к примеру

Код:
$urls = array(
  'http://forum.ru-board.com/topic.cgi?forum=24&topic=11193&glp#lt',
  'http://www.feedforall.com/sample-feeds.htm'
);
 
$out = array();
foreach($urls as $url)
{  
   if (!($content = file_get_contents($url))) { echo 'Unable to load URL ' . $url . '<br>'; continue; }
   
   $dom = new DOMDocument();
   @$dom->loadHTML($content);
   
   foreach($dom->getElementsByTagName('link') as $tag)
      if (($type = $tag->getAttribute('type')) &&  strtolower($type) == 'application/rss+xml')
         $out[] = $tag->getAttribute('href');  
}
 
var_dump($out);

по нормальному лучше использовать cURL, конечно же.

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 23:34 11-11-2014
n0tkn0w

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хорошая программа! Спасибо тебе большое!
 
>>по нормальному лучше использовать cURL, конечно же.
Пока мне хватит с лихвой этой программы, но нужна ей одна важная доработка: во многих случаях в атрибуте href указан не полный урл.  
 
Как мжно сделать проверку первых битов т.е http и ели их нет то подставить адрес из массива?

Всего записей: 75 | Зарегистр. 07-06-2014 | Отправлено: 18:52 13-11-2014 | Исправлено: n0tkn0w, 19:04 13-11-2014
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
n0tkn0w

Цитата:
во многих случаях в атрибуте href указан не полный урл

либо регулярным выражением, либо  
http://php.net/manual/en/function.parse-url.php
 
аналогично к изначальному URL и взять оттуда домен, после чего объединить в полную строку.

Всего записей: 15117 | Зарегистр. 20-09-2014 | Отправлено: 21:10 13-11-2014
savant_a



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
В Firefox кликаю правой кнопкой на странице (на главной), затем выбираю "Исходный код страницы->Ctrl+F, ввожу в строке поиска на странице "RSS".
Исходный код можно просматривать многими браузерами, также правый клик по странице, затем соответствующий пункт меню.

----------
Выход есть!

Всего записей: 870 | Зарегистр. 23-03-2010 | Отправлено: 16:17 08-06-2015
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » В помощь вебмастеру » Чем получить адреса rss?


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru