Loading...
Помощь по скриптам | Как вывести тег <enclosure>? С меня плюс
540447140 (23.07.2020 в 02:16) PAIN , Я хз как это правильно выводить...
php
   echo $out; preg_match('#<enclosure url="([^<]+)"#U',$url,$out); print_r($url);   
Показывает: ArrayНttps://m.lеntа.ru/rss/lаst24
$out[1];
PAIN ,
php
   echo $url->enclosure.'<br/>'; preg_match('#<enclosure url="([^<]+)"#U', $url, $out); print_r($out[1]);   
Ни чё не выводит... Кста, file_get_contents() не работает, в данном случае, если его вставить, код слетает.
Ну может поможет кто? Плиз
Плюсик в анкету поставлю
540447140 (23.07.2020 в 01:25) Добрая ночь господа и дамы Гг Есть такой вот парсер новостей с lenta rss
php
   <? $url = 'Нttps://m.lеntа.ru/rss/last24'; $rss = simplexml_load_file($url); foreach ($rss->channel->item as $item) {         echo '<h2>'.$item->title.'</h2>';         echo '<h3>'.$item->description.'</h3>';         echo $item->category; } ?>   
Вопрос как мне вывести тег <enclosure> отвечающиф за показ изображения? Вот его пример:
html
   <enclosure url="Нttps://icdn.lеntа.ru/images/2020/07/22/16/20200722162421740/pic_b56c833890730903eadc83e6c7ca9bc8.jpg" type="image/jpeg" length="107915"/>   
Дело в том, что у данного тега нету закрывающегося брата, соответственно при попытке сделать парсинг: echo $item->enclosure; он просто не показывает и всё. Вопрос, что надо добавить чтобы она мог выводить фото? P. S. Код самопис, делал сам. Написан на SimpleXML
Пробуй парсить на прямую. пример кода как вариант
php
   <?php $rss = $_GET['pars']; $xml = @simplexml_load_file($rss);  if ( $xml===false ) die('У этого сайта нет RSS: '.$rss);  foreach ( $xml->xpath ('//item') as $item ) { $url = file_get_contents($item->link); preg_match_all('!<TD class=zpic>(.*)</TD>.*<H2>(.*)</H2>.*</TABLE>(.*)<P class=links>!isU', $url, $res, PREG_SET_ORDER); $fulltext = preg_replace("#<a.+?>(.+?)</a>#is","$1",$res[0][3]); $img = preg_replace('!<img(.+?)>!isU',"<img $1 style='float:left;margin:3px;'>",$res[0][1]); $out = "<table> <tr> <td> <h1>{$res[0][2]} - дата: {$item->pubDate}</h1> <p>{$img}{$fulltext}</p> </td> </tr> </table>"; echo $out;   }   file_put_contents (date ('H-i') . '.html', $out);  ?>   
Создай просто php файл к примеру rss.php и помести код. парсинг новостей таким образом http://ваш_сайт.ru/rss.php?pars=https://lenta.ru/rss/last24 Парс новостей в html файлы. Как вариант, это то что я одно время юзал.
________
посл. ред. 23.07.2020 в 14:47; всего 1 раз(а); by DmPilot
DmPilot , Вот

Изображение

------
73223_Screenshot_20200723150227.png (76.5 Kb)
Скачиваний: 128
540447140 (23.07.2020 в 15:03)
DmPilot , Вот

Не парсит или что?
DmPilot , Только дату парсит
540447140 (23.07.2020 в 15:06)
DmPilot , Только дату парсит

попробуй парсить страницу просто..
DmPilot , Этот вариант парсит идеально:
php
   <? $url = 'https://m.lenta.ru/rss/last24'; $rss = simplexml_load_file($url); foreach ($rss->channel->item as $item) {         echo $item->title.'<br/>';         echo $item->description; } ?>   
Страница грузится быстро, вот только как изображение выводить я хз
540447140 (23.07.2020 в 15:12) DmPilot , Этот вариант парсит идеально:
php
   <? $url = 'https://m.lenta.ru/rss/last24'; $rss = simplexml_load_file($url); foreach ($rss->channel->item as $item) {         echo $item->title.'<br/>';         echo $item->description; } ?>   
Страница грузится быстро, вот только как изображение выводить я хз
тебе так нужно? https://dmpilot.site/rss.php
Онлайн: 0
Время:
Gen. 0.1076
(c) Bym.Guru 2010-2026