Linux за българи: Форуми

Програмиране => Web development => Темата е започната от: SK0RP10N в Aug 27, 2009, 11:05



Титла: RSS за linux-bg
Публикувано от: SK0RP10N в Aug 27, 2009, 11:05
Това ен е въпрос, а аз щя дам един код, който си го написах снощи, за да извлича новините от тук и могат да бъдат четени във всеки сайт
Код
GeSHi (PHP):
  1. <?php
  2. header("Content-type: text/html; charset=Windows-1251");
  3. $read = $_GET['read'];
  4. if(is_numeric($read)){
  5. @$content = file_get_contents("http://www.linux-bg.org/cgi-bin/y/index.pl?page=news&key=$read");
  6. $razdel = explode("</u>","$content");
  7. $razdel = explode("<u>","$razdel[0]");
  8. $razdel = $razdel[1];
  9. $title = explode("<u>$razdel</u></a>&raquo;","$content");
  10. $title = explode("</td>","$title[1]");
  11. $title = $title[0];
  12. $autor = explode("от <i>","$content");
  13. $autor = explode("(","$autor[1]");
  14. $autor = $autor[0];
  15. $new = explode(") </i></font><br><p><font face=\"Verdana\" size=\"-1\">","$content");
  16. $new = explode("</font>","$new[1]");
  17. $new = $new[0];
  18. echo "Заглавие: $title<p>Автор: $autor<p>Категория: $razdel:<hr>$new<hr>";
  19. }
  20. $content = file_get_contents("http://linux-bg.org");
  21. $explode = explode("<table border=\"0\" width=\"100%\">","$content");
  22. $explode = explode("<td background=\"/themes/blju2/cnt_body_bg.gif\">","$explode[0]");
  23. $content = $explode[1];
  24. $linkarray = explode("<a href","$content");
  25. $count = -1;
  26. foreach($linkarray as $new){
  27. $count = $count + 1;
  28. $link = explode(" ","$new");
  29. $link = explode("key=","$link[0]");
  30. $link = $link[1];
  31. $last = $link[strlen($link)-1];
  32. $link = str_replace("$last","","$link");
  33. $links[$count] = $link;
  34. }
  35. $count = 0;
  36. $titlearray = explode("</a>","$content");
  37. foreach($titlearray as $title){
  38. $count = $count + 1;
  39. $title = explode("class=\"indexb\">","$title");
  40. $title = $title[1];
  41. $titles[$count] = $title;
  42. }
  43. $count = -1;
  44. do
  45. {
  46. $count = $count + 1;
  47. if($links[$count] !== "" and $titles[$count] !== "") echo "<a href=?read=$links[$count]>$titles[$count]</a><br>";
  48. }
  49. while($count < 15);
  50. ?>
  51.  
demo: http://212.233.196.39/protect/ne6to.php


Титла: Re: RSS за linux-bg
Публикувано от: zeridon в Aug 29, 2009, 09:05
Скриптчето много хубаво ама честно казано не сме съгласни на такъв тип събиране на новини.

Ако искаш да ползваш контента има РСС който е по лек и за машината и за парсене

Да не говорим че пък всеки път буха заявка и не кешира.

С две думи: Работи но по добре се ориентирай към рсс-а (http://www.linux-bg.org/linux-bg-news.rdf)