Fler TV-kanaler på skrivboret
Jag tänkte dela med mig av mitt senaste script till GeekTool.
Till *nux borde det finnas liknande program... roottail verkar vara liknande men jag vet inte om det har stöd för script. Går säkert att lösa med ett cron-job som skapar en fil som roottail lyssnar på. Men jag har inte provat...
Efter att ha tröttnat på att tv.py inte hade tillräckligt många kanaler så började titta runt på www.tvprogram.nu om det gick att hämta informationen på annat sätt då det bevisligen finns massor av kanaler där. Det jag kom fram till var att med hjälp av en cookie kunde destämma vilka kanaler som skulle visas på http://tvprogram.nu/cgi-tvprogram/tvfix.cgi?NU-tvms.htm så efter en natt och lite till är det här resultatet:
#!/bin/bash
# tv.sh Hämtar data från tvprogram.nu
cookie="0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z\
0z0z0z0z0z0z0z0z0z0z1z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z1z0z0\
z0z0z0z0z0z0z0z1z1z1z1z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0z0"
url="http://tvprogram.nu/cgi-tvprogram/tvfix.cgi?NU-tvms.htm"
tempfile="/tmp/tv.html"
curl -s -A "Mozilla/4.0" -b "tvpkaka3=$cookie" $url | fgrep -A 1 tvprogram\ nu\ klockan\
| sed -e '/tvprogram nu klockan/d' -e 's/href=/ /g' > $tempfile
/usr/local/bin/lynx -dump $tempfile | sed -e '/[0-9][0-9].[0-9][0-9]-[0-9][0-9].[0-9][0-9]/d' \
| sed -e '/^ [A-Z]/s/^ //g' -e '/^ /s/^ / /'
exit
För att den här tråden skall bli läsbar har jag varit tvungen att lägga in radbrytningar i scriptet ovan. När ni klistrar in kakinformationen så bry er inte om de \ som står där uat ersätt hela 0z0z0z0...
resultatet av scriptet kan se ut så här:
TV1000 20.00 Fahrenheit 9/11
22.00 Snygg, sexig och singel
00.00 Behind the Mask
TV1000 Action 20.00 Intermission
22.00 Identity
00.00 Heat
TV1000 Classic 20.00 The Mission
22.00 V?lkommen Mr. Chance
00.00 Det ljuva livet
TV1000 Family 19.00 Min farsa ?r en hj?lte
21.00 Van the Man
23.00 Kiss the Bride
TV1000 Nordic 19.00 Baby
21.00 R?kna till 100
23.00 Enkel resa till Mombasa
För att få över scriptet till din dator så kopiera texten och skapa en ny textfil med din favorit editor och klistra in. Spara med lämpligt namn och gör det körbart med chmod u+x namn.på.filen
För att ändra vilka kanaler som scriptet ger så surfa in på www.tvprogram.nu, klicka i de kanaler du vill ha och klicka ur Passerat, Ikoner och Text. Scriptet är inte anpassat för dessa. Kommande kan du välja själv om du vill se eller ej. Spara sedan kanaler.
Nu måste vi få fram informationen ur kakan som tvprogram.nu lagrade på din dator. Om du använder firefox så hittar du det under inställningar Cookies - Show cookies. Leta upp kakan från tvprogram.nu och kopiera innehålet och klistra in det i scriptet över det som står där. Om du använder Safari måste använda SafariCookieCutter eller liknande för att få ut informationen. Hur andra läsare fungerar vet jag inte.
Sedan behövs lynx, en textbrowser, för att det skall fungera. Hämtas
här för Mac OS X och här eller genom din dists pakethanterare för er andra. Ändra i scriptet så att det överensstämmer med var lynx är installerat på din dator.
Sedan är det bara att köra.
!!!VARNING!!!
Om du sätter refresh för lågt kommer tvprogram.nu att blockera ditt ipnummer så att skriptet inte fungerar. Sätt det till tex. 5 min (300 s).
Stolt användare av en ibook 300 MHz (dasslocket)