diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | README.txt | 6 | ||||
-rw-r--r-- | tv.nrk.no.xsl | 35 | ||||
l--------- | tv.nrk.no.xsl.txt | 1 | ||||
-rw-r--r-- | update-feed.sh | 3 | ||||
l--------- | update-feed.sh.txt | 1 |
6 files changed, 47 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f45b400 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.atom diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..cd95ae5 --- /dev/null +++ b/README.txt @@ -0,0 +1,6 @@ +Want to know what's recently been published at http://tv.nrk.no, but +don't want to poll it all the time? Then this is the thing for you! + +This is a small experiment to create an atom feed from +http://tv.nrk.no. Put the .atom file in your feed reader and you'll +get a feed with the recent shows from NRK. diff --git a/tv.nrk.no.xsl b/tv.nrk.no.xsl new file mode 100644 index 0000000..18d59a9 --- /dev/null +++ b/tv.nrk.no.xsl @@ -0,0 +1,35 @@ +<?xml version="1.0"?> +<xsl:stylesheet version="1.0" + xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns="http://www.w3.org/2005/Atom"> +<xsl:output indent="yes"/> +<xsl:template match="/html"> +<feed> + <title>New shows</title> + <id>urn:trygvis:tv.nrk.no,recent</id> + <!-- + <updated>2003-12-13T18:30:02Z</updated> + --> + <xsl:for-each select="//li"> +<xsl:call-template name="li"/> + </xsl:for-each> +</feed> +</xsl:template> +<xsl:template name="li"> + <entry> + <id><xsl:value-of select="a/@href"/></id> + <!-- + <id>urn:trygvis:tv.nrk.no,item,<xsl:value-of select='normalize-space(a)'/></id> + --> + <title><xsl:value-of select='normalize-space(a)'/></title> + <updated><xsl:value-of select="a/strong/time/@datetime"/></updated> + <author><name>Trygve Laugstøl</name></author> + <link> + <xsl:attribute name="href"><xsl:value-of select="a/@href"/></xsl:attribute> + </link> + <summary> + <xsl:value-of select="normalize-space(div[@class='stack-links'])"/> + </summary> + </entry> +</xsl:template> +</xsl:stylesheet> diff --git a/tv.nrk.no.xsl.txt b/tv.nrk.no.xsl.txt new file mode 120000 index 0000000..c14950c --- /dev/null +++ b/tv.nrk.no.xsl.txt @@ -0,0 +1 @@ +tv.nrk.no.xsl
\ No newline at end of file diff --git a/update-feed.sh b/update-feed.sh new file mode 100644 index 0000000..f0a7508 --- /dev/null +++ b/update-feed.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +curl -s http://tv.nrk.no/listobjects/recentlysent | dos2unix |xmllint --html --dropdtd --xmlout - 2> /dev/null | xmlstarlet tr ./tv.nrk.no.xsl > tv.nrk.no.atom diff --git a/update-feed.sh.txt b/update-feed.sh.txt new file mode 120000 index 0000000..c0c7c0c --- /dev/null +++ b/update-feed.sh.txt @@ -0,0 +1 @@ +update-feed.sh
\ No newline at end of file |