Avatar billede maniactor Nybegynder
10. februar 2010 - 10:04 Der er 2 kommentarer og
1 løsning

Nyhedsscanner, hvordan gribes det an?

Hej alle sammen!

Jeg har fået mig en idé til en lille nyhedsscanner, som skulle virke noget ala nedenstående:

1) Mulighed for at angive søgeord, som listes i et array eller lignende.
2) Mulighed for at angive rss feeds der skal tjekkes, også via arrays eller lignende.

Når scriptet aktiveres, så søges siderne på rss listen igennem for de søgeord der skrives i pkt. 1. Der returneres et link til artiklen, med artiklens titel som link tekst.

Hvis nogen har mod på at skrive sådan et script, så go ahead :). Jeg er ikke den skrappeste til PHP. Men om ikke andet, så søger jeg lidt informationer om hvordan jeg kommer i gang. Især mht. at skanne siderne for søgeordene.
Avatar billede acore Ekspert
10. februar 2010 - 11:25 #1
F.eks. sådan her - holdt simpelt og illustrativt, så du har noget at bygge videre på:

<?php
// List of RSS-feeds to check
$rss_feeds = array(
  "http://ing.dk/rss/nyheder"
    );

// Pattern to match - see preg_match(...)
$pattern = "/sne/i"; // Matches everything

if ($rss = rss_feeds($rss_feeds, $pattern))
{
  foreach($rss as $item)
  {
      echo("<a href='".$item["link"]."' title='".$item["date"].": ".$item["description"]."'>".$item["title"]."</a><br/>");
  }
}

function rss_feeds($rss_feeds, $pattern)
{
  $n = 0;
  $rss = NULL;

  foreach($rss_feeds as $rss_feed)
  {
      if ($rss_file = simplexml_load_file($rss_feed))
      {
          $items = $rss_file->channel;

        foreach($items->item as $item)
        {
            if (preg_match($pattern, $item->description) == 1)
            {
              $rss[$n]["link"] = utf8_decode($item->link);
              $rss[$n]["title"] = utf8_decode($item->title);
              $rss[$n]["date"] = strtotime(utf8_decode("{$item->pubDate}"));
              $rss[$n]["description"] = utf8_decode($item->description);
              $n++;
            }
        }
      }
  }

  return $rss;
}
?>
Avatar billede maniactor Nybegynder
10. februar 2010 - 11:32 #2
Hold da op acore..
Tusind tak! Der er vist lidt flere ting at sætte sig ind i, men helt klart noget at gå ud fra.

Holder den lige åben og ser om der kommer flere tips, men medmindre der sker noget exceptionelt, så er svaret dit :).
Avatar billede maniactor Nybegynder
10. februar 2010 - 22:56 #3
Der kom ikke mere, men det er vist heller ikke nødvendigt. Tusind tak for startskuddet!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester