MythTV.nl
4 December 2020, 06:52:08 *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: Klik hier voor een overzicht van de meest recente fourm postings.
Help mee te uit te groeien tot een noemenswaardige Nederlandse MythTV community en anderen ver te helpen met MythTV!

:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: tv_grab_nl_C:tvgids.nl en beschrijvingen  (Read 7732 times)
veer0318
Newbie
*
Posts: 13


« on: 29 July 2009, 14:15:35 »

Hoi,

Volgens mij zit er een foutje (kleintje maar) in de code voor de tv_grab_nl_C-grabber die de data ophaalt op tvgids.nl Neem een programma als deze:

http://www.tvgids.nl/programma/8253826/VPRO%27s_Import%3A_Sisters_in_law/

De grabber laadt deze beschrijving als

Code:
  <programme start="20090729233000 +0200" stop="20090729012000 +0200" channel="2.tvgids.nl">
    <title lang="nl">VPRO's Import: Sisters in law</title>
    <desc lang="nl">uit 2005. Samen met co-regisseur Florence Ayisi volgt Kim Longinotto in een stadje in Zuidwest-Kameroen de strijd van vrouwen voor hun wettelijke rechten. Van oudsher worden deze vaak niet al te serieus genomen en zijn vele vrouwen en meisjes slachtoffer van huiselijk geweld. Daar hebben de plaatselijke rechter Hortense Bam en openbaar aanklager Vera Ngassa schoon genoeg van. 'Ik ben bang dat u een eeuw gemist heeft. Dit is de eeuw waarin de rechten van de vrouw gerespecteerd worden', spreekt rechter Bam streng tot een beklaagde, wiens vrouw de moedige stap heeft gezet niet langer te zwijgen over haar mishandeling. Met een barmhartig cameraoog filmen Longinotto en Ayisi de gebeurtenissen in en om de rechtszaal. Sisters in law toont zo een emotionele, menselijke plek, vol hartverscheurende verhalen, humor en hoop op wezenlijke verandering.</desc>
    <category>Documentaire</category>
  </programme>

Dat klopt dus niet: want het woord 'Documentaire' hoort er bij, anders begint de becshrijving halverwege de zin. Maar dit komt niet bij alle programma's voor. Ik denk dat een oplossing zou zijn om te kijken of het woord van de beschrijving met een kleine letter begint. Zo ja, neem dan het dikgedrukte woord ervoor ook bij.

Graag zou ik dit zelf in elkaar sleutelen, maar heb helaas te weinig verstand van C. Zou iemand (Lars?  Wink) dit kunnen fixen?
Logged
Lars
Full Member
***
Posts: 56


« Reply #1 on: 2 August 2009, 22:46:12 »

Het is niet echt een foutje. Vermoedelijk was dit een bewuste keuze.

Ik heb het wel aangepast, want het is natuurlijk wel netter om dit mee te pakken.

Ik maak nog niet een nieuwe release aan, maar hieronder is de patch.

Opslaan als bijvoorbeeld tvgids.patch in de sourcedir.
Dan: patch -p0 <tvgids.patch

Patchfile:
Code:
--- ../tv_grab_nl_C-0.02.13/tvgids.c    2009-05-11 23:19:58.000000000 +0200
+++ tvgids.c    2009-08-02 22:40:34.000000000 +0200
@@ -499,9 +499,21 @@ int tv_gids_nl(channel * kanaal)
                     strcpy(genre, "film");
                     convert_genre(genre);
                 }
-                fgets(buffer, 1024, step1fp);
                progdetail = calloc(sizeof(char), 4096);
-                progdetail[0] = '\0';
+                if(p=strchr(buffer, '>'))
+                    p++;
+                if(p1=strrchr(buffer, '<'))
+                    *p1 = ' ';
+
+                if( p && p1){
+                    p1[1]='\0';
+                    if(strlen(p) > 0){
+                        strcpy(progdetail, p);
+                    }
+                }
+                else progdetail[0] = '\0';
+                fgets(buffer, 1024, step1fp);
+                tel3=0;
                do {
                    if( strstr(buffer, "</div>") ||
                         strstr(buffer, ">Terug<"))
@@ -518,7 +530,10 @@ int tv_gids_nl(channel * kanaal)
                             *p1 = '\0';
                         }
                         if(strlen(p) >0 ) {
+                            if(!tel3 && !islower(*p) )
+                                progdetail[0]='\0';
                            strcat(progdetail, p);
+                            tel3++;
                         }

                     }
« Last Edit: 5 August 2009, 13:10:21 by Michel » Logged
veer0318
Newbie
*
Posts: 13


« Reply #2 on: 3 August 2009, 12:57:15 »

HÚ Lars,

Thanks dat je dit even wilde oppakken. Helaas werkt de patchfile bij mij niet, doe ik iets fout?

Dit krijg ik terug
Code:

veer@vps:~/tv_grab_nl_C-0.02.13# patch -p0 < ./tvgids.patch
patching file tvgids.c
Hunk #1 FAILED at 499.
Hunk #2 FAILED at 530.
2 out of 2 hunks FAILED -- saving rejects to file tvgids.c.rej
Logged
Lars
Full Member
***
Posts: 56


« Reply #3 on: 3 August 2009, 21:30:50 »

Ik heb de patch geattached, misschien dat copy/paste niet goed gaat...?

Groeten,
Lars.
Logged
veer0318
Newbie
*
Posts: 13


« Reply #4 on: 4 August 2009, 21:53:14 »

De patch heb ik ge´nstalleerd en het spul compileert zoals het hoort. Morgen laat ik je weten of het allemaal gelukt is met de daadwerkelijke beschrijvingen Smiley
Logged
Michel
Administrator
Sr. Member
*****
Posts: 111


« Reply #5 on: 5 August 2009, 13:13:19 »

Lars,

Je copy-paste heeft op zich de code wel in deze portal gekopieerd, maar de software (SMF/TinyPortal) denkt in jouw code markup aanwijzigingen te zien. Ik heb er dan ook een paar tags omheen gezet om het als code te markeren. Nu zie je wel de inhoud van de patch verschijnen...

Michel.
Logged
veer0318
Newbie
*
Posts: 13


« Reply #6 on: 5 August 2009, 13:16:21 »

Hoi Michel,

Had de code al via de quote-knop eruit gekregen. Kreeg 'm ook daarmee niet werkend. Met de attachment is het uiteindelijk wel gelukt en kan met veel plezier melden dat het inderdaad werkt: de beschrijvingen beginnen weer netjes bij het begin. Altijd fijn Wink. Thanks Lars!
Logged
veer0318
Newbie
*
Posts: 13


« Reply #7 on: 24 August 2009, 23:13:22 »

Hoi!

Nog een probleempje gevonden. Dit keer weer met de beschrijvingen, en dan wel dat ze soms halverwege afgekapt worden. Neem bijvoorbeeld dit programma op tvgids.nl:
http://www.tvgids.nl/programma/8402735/Toren_C/

En dan krijg je deze XML terug:

Code:
<programme start="20090825215500 +0200" stop="20090825223000 +0200" channel="$
    <title lang="nl">Toren C</title>
    <desc lang="nl">Familie heb je, vrienden maak je, collega's word je. In het bedrijvencomplex Toren C werken mensen samen die elkaar niet hebben uitgezocht. Zoals op elke werkvloer, leidt dat nog al eens tot spanningen of pijnlijke situaties. In Toren C is dat aan de orde van de dag, maar dan nog veel erger. Of het nu absurd is, pijnlijk of volkomen van de pot gerukt, de werkelijkheid van Toren C is altijd wranger, gŕnanter en absurder dan fictie. Maike Meijer en Marg˘t Ros leggen in Toren C, waar zich ook een privÚkliniek bevindt, een sauna, een Japans restaurant en op de dertiende verdieping een manege, de vinger op de zere plek. Genadeloos peuteren ze aan etterende wonden en schaamteloos leggen ze situaties bloot, waarin we onszelf of anderen liever niet willen zien. Want wat doe je als je nieuwe werkgeefster je benadert met de motoriek van een gorilla? Of hoe profiteer je optimaal van je mobiele telefoon met een trilfunctie? En waar blijf je als het hele bedrijf op intranet kan zien hoe je je bikinilijn ontha</desc>
    <credits>
      <actor>Maike Meijer</actor>
      <actor>Marg˘t Ros</actor>
    </credits>
    <category>Amusement</category>
  </programme>

Is dit oplosbaar?
Logged
Lars
Full Member
***
Posts: 56


« Reply #8 on: 30 August 2009, 00:03:18 »

Ik heb gezien waar het probleem ligt.
De regel is erg lang en wordt niet in 1 keer in de readbuffer ingelezen.
Dit wordt niet goed afgehandeld.

Ik zal binnenkort een nieuwe versie klaarzetten.

Ben nu nog aan het kijken/testen of mijn aanpassingen goed zijn.

Groeten,
Lars.
Logged
Lars
Full Member
***
Posts: 56


« Reply #9 on: 31 August 2009, 21:40:20 »

Ik heb versie 0.02.14 klaargezet voor download.

Changelog:

0.02.14 (released 31 aug 2009):
    -tvgids: Typeaanduiding meenemen in details, als deze volgend woord in
            details met lowercase begint.
    -tvgids: Readbuffer past niet altijd regel van detail in. Hier rekening
            mee houden.
    -alg.c: &[aoue]uml; en meer htmlcodes naar iso 8859-1 vertalen.


Groeten,
Lars.
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!