Page 25 of 80

Posted: 2006-05-25 14:17:33
by SiX-P4cK
y'a plus moyen d'importer les petite image d'allociné et j'arrive pas a corriger sa tout seul :cry:

Nouveau code HTML de la page:

Code: Select all

		<table cellpadding="0" cellspacing="0" border="0" style="padding:0 0 0 0" width="100%">
		<tr>
			<td valign="top" style="padding:0 0 5 0" width="100%" align="center">
<img src="http://a69.g.akamai.net/n/69/10688/v1/img5.allocine.fr/acmedia/medias/nmedia/18/36/19/96/18611022.jpg" border="0" alt="" />
			</td>

		</tr>
		</table>
L'ancien script:

Code: Select all

       delete(Line,1, pos('<td valign="top" style="padding:0 10 5 0">', Line));
       GetPicture(findInfo('width="100%"><img src="', '" border', Line,'0'));
Donc si j'ai bien compris tu effaces tout le début du code html de la page puis tu enregistres l'image en extrayant l'adresse de l'image avec findinfo.

J'ai remplacer par sa mais sa marche pas:

Code: Select all

delete(Line,1, pos('<td valign="top" style="padding:0 0 5 0"', Line));
GetPicture(findInfo(' width="100%" align="center"><img src="', '" border', Line,'0'));
C'est quoi qui bloque? :??:

Posted: 2006-05-28 19:42:58
by draco31.fr
Essaie avec ça :

Code: Select all

delete(Line,1, pos('<td valign="top" style="padding:0 0 5 0"', Line));
GetPicture(findInfo('<img src="', '" border', Line,'0'));
Même si ton code précédent me semblait correct :/

Posted: 2006-05-31 20:12:30
by SiX-P4cK
merci draco ca marche ton code.

Mais c'est strange quand meme :hum:

Tout ca parce que j'ai mis " width="100%" align="center">" dans le findInfo :o

Bon bien ScorEpioN faut mettre à jour :grinking:

Posted: 2006-06-01 08:12:57
by ScorEpioN
J'attends un peu et je mets à jour ;)

Posted: 2006-06-06 23:27:25
by acteo
Bonjour,
Je venais justement pour signaler ce problème... trop tard ... déjà. Bon et beau boulot ! Merci et bravo à tous !

Posted: 2006-06-23 12:25:36
by baffab
Bonjour,
à propos des modifs dont je t'avais parlé sur cinemasie, j'ai fais des modifs sur la dernière version:

- correction d'un bug lors de la récupération du réalisateur lorsqu'ils sont plusieurs (ex Battle Royale II)

Code: Select all

// Réalisateur
   if CanSetField(fieldDirector) then
   begin
      Value := findInfo(retourneElement(5), '</table>', Line,'1');
      Value := StringReplace(Value, '<i>', ' (');
      Value := StringReplace(Value, '</i>', '), ');
      Value := StringReplace(Value, ' (), ', ', ');
      Value := StringReplace(Value, '	', '');
      Value := coupeInfo('<div class="titrecol">', '</div>', '', Value);
      Value := StringReplace(Value, ' - ', '');
      Value := StringReplace(Value, '   ', ' ');
      Value := StringReplace(Value, '  ', ' ');
      Value := StringReplace(Value, ' ,', ',');
      Value := deleteEnd(formatTitre(Value,GetOption('Casse Choisie')), ',');
      MonSetField(fieldDirector, deleteEnd(Value, ', '));
   end;
- différenciation d'un film avec un manga ou un anime. Par exemple pour cat's eye, il existe le manga, l'anime et le film. Avec ta version on ne récupère que le premier (puisqu'ils s'appellent pareils) mais c'est la fiche du manga. J'ai donc fait une modif qui précise s'il s'agit d'un manga ou autre :

Code: Select all

// Titres exacts
    if pos(retourneElement(2),Line) <> 0 then
    begin
      StartPos := pos(retourneElement(2), Line);
      delete(Line, 1, StartPos-1);
      StartPos := pos('"indpic">', Line);
      delete(Line, 1, StartPos-1);
      repeat
        StartPos := pos('"indpic">', Line);
        delete(Line, 1, StartPos-1);
        titre := findInfo('"indpic">', '</a>', Line,'0');
        adresse := urlBaseFRUS()+findInfo('<a href="', '"', Line,'0');
        if pos('manga/', adresse)>0 then
          titre := titre + ' (manga)'
        else if pos('animes/', adresse)>0 then
          titre := titre + ' (animes)';
        annee := findInfo(retourneElement(3)+'</b></td><td>', '</td>', Line,'0');
        listeResultat.Add(annee+'|'+titre+'|'+adresse);
        delete(Line, 1, length('"indpic">'));
        EndPos := pos('</table>', Line);
        StartPos := pos('"indpic">', Line);
      until (StartPos > EndPos);
    end;
    titre_exact := titre;
// Autres titres
    if pos(retourneElement(4),Line) <> 0 then
    begin
      StartPos := pos(retourneElement(4), Line);
      delete(Line, 1, StartPos-1);
      StartPos := pos('"indpic">', Line);
      delete(Line, 1, StartPos-1);
      repeat
        StartPos := pos('"indpic">', Line);
        delete(Line, 1, StartPos-1);
        annee := findInfo('"indpic">', '</td>', Line,'0');
        adresse := urlBaseFRUS()+findInfo('<a href="', '"', Line,'0');
        titre := findInfo('<td>', '</a>', Line,'0');
        if pos('manga/', adresse)>0 then
          titre := titre + ' (manga)'
        else if pos('animes/', adresse)>0 then
          titre := titre + ' (anime)'
        else if (GetOption('Langue (Français/English)') = 0)then
          titre := titre + ' ('+findInfo('</a></td>', '</a>', Line,'0')+')';
        titre := StringReplace(titre , '		 ', '');
        titre := StringReplace(titre , '	', '');
        titre := StringReplace(titre , '()', '');
        if titre <> titre_exact then
          listeResultat.Add(annee+'|'+titre+'|'+adresse);
        delete(Line, 1, length('"indpic">'));
        EndPos := pos('</table>', Line);
        StartPos := pos('"indpic">', Line);
      until (StartPos =0);
    end;
// Tous les titres
    if pos(retourneElement(5),Line) <> 0 then
    begin
      StartPos := pos('tous les titres', Line);
      delete(Line, 1, StartPos-1);
      StartPos := pos('"indpic">', Line);
      delete(Line, 1, StartPos-1);
      repeat
        StartPos := pos('"indpic">', Line);
        delete(Line, 1, StartPos-1);
        annee := findInfo('"indpic">', '</td>', Line,'0');
        adresse := urlBaseFRUS()+findInfo('<a href="', '"', Line,'0');
        titre := findInfo('<td>', '</a>', Line,'0');
        if pos('manga/', adresse)>0 then
          titre := titre + ' (manga)'
        else if pos('animes/', adresse)>0 then
          begin
          titre := titre + ' (anime)';
          listeResultat.Add(annee+'|'+titre+'|'+adresse)
          end
        else if titre <> titre_exact then
        begin
          if (GetOption('Langue (Français/English)') = 0)then
            titre := titre + ' ('+findInfo('</a></td>', '</a>', Line,'0')+')';
          titre := StringReplace(titre , '		 ', '');
          titre := StringReplace(titre , '	', '');
          titre := StringReplace(titre , '()', '');
          listeResultat.Add(annee+'|'+titre+'|'+adresse);
        end;          
        delete(Line, 1, length('"indpic">'));
        EndPos := pos('</table>', Line);
        StartPos := pos('"indpic">', Line);
      until (StartPos = 0);
    end;
Bonne continuation ScorEpioN... :grinking:

PS : je reconnais que mes exemples de films ne sont pas des références mais tant pis !

Posted: 2006-07-05 23:07:29
by draco31.fr
Salut ScorEpioN ^^

Le script d'AnimeKa n'arrive plus à récuperer l'image du site AniDB.

J'ai par ailleurs un problème avec le script dédié à AniDB que j'avais fait.
Je n'arrive pas à comprendre ce qui ne va pas avec AniDB, donc si tu te penches sur la question ou que tu trouves la solution, merci de nous en faire part :p

Posted: 2006-07-08 09:14:59
by Stroumph83
Bonjour,

Avec la version 51, jai ce message d'erreur:
Erreur de script dans "ALLOCINE_FR" : unknow identifier : RCN à la ligne 1683

Y a t il quelque chose à modifier ?

Merci par avance

Posted: 2006-07-08 10:03:18
by draco31.fr
Stroumph83 wrote:Bonjour,

Avec la version 51, jai ce message d'erreur:
Erreur de script dans "ALLOCINE_FR" : unknow identifier : RCN à la ligne 1683

Y a t il quelque chose à modifier ?

Merci par avance
Il faut que tu fasse la mise à jour du fichier commun : C'est le fichier "ScorEpioNCommonScript.pas"
Lance le script Allociné avec l'option "mise à jour" --> Oui, et il téléchargera la dernière version du fichier ;)

Posted: 2006-07-08 19:45:39
by Stroumph83
Merci ! Tout est ok !

Posted: 2006-07-12 09:19:49
by baffab
Salut ScorEpioN,

je me suis fait des scripts que j'utilise et qu'à la rigueur je pourrais partager mais comme j'utilise des routines du fichier "ScorEpioNCommonScript.pas" j'aurais voulu savoir si ça ne te génait pas (en reprenant la ligne Comments qui le précise) ou si tu préfères que je m'en passe (ce qui peut aussi se faire).
On prend vite des habitudes quand on a des outils de qualité :grinking: .

Merci, A+

baffab

Posted: 2006-07-12 18:54:22
by antp
A priori c'est pas plus mal que des scripts utilisent des fichiers ".pas", ça permet de réduire la taille des scripts ;) Je laisserai ScorEpioN répondre, mais je présume qu'il ne serait pas contre le fait que ton script fasse appel à son fichier. Tu peux mettre un remerciement dans la partie "commentaires" de ton script par exemple.

Posted: 2006-07-12 20:45:31
by baffab
antp wrote:Tu peux mettre un remerciement dans la partie "commentaires" de ton script par exemple.
Cela va de soit, mais j'ai l'impression qu'il est en vacances depuis qu'on ne le voit plus :cool:

Posted: 2006-07-13 19:12:40
by sellige
Bonjour,

Allociné ne met plus à jour la liste des acteurs

Je me suis dit qu'il fallait mettre la nouvelle version de Allocine-fr.ifs
Je l'ai téléchargée, j'ai remplacé l'ancienne version

Je fais un test; j'appelle Allocine

Erreur de script dans Allocine_FR : unknown identifier: RCN à la ligne 1681

Probleme...

Posted: 2006-07-13 19:32:53
by baffab
sellige wrote:Bonjour,

Allociné ne met plus à jour la liste des acteurs

Je me suis dit qu'il fallait mettre la nouvelle version de Allocine-fr.ifs
Je l'ai téléchargée, j'ai remplacé l'ancienne version

Je fais un test; j'appelle Allocine

Erreur de script dans Allocine_FR : unknown identifier: RCN à la ligne 1681

Probleme...
Salut,
pour l'erreur de script, il faut mettre à jour le script commun "ScorEpioNCommonScript.pas".

Pour les acteurs, j'ai fait une rapide correction, il faut remplacer le code de la procédure suivante par :

Code: Select all

procedure castingComplet(pageCasting: string);
var
  Line, Role, Acteur, couple, liste, Producteur :string;
  BeginPos, EndPos, OtherPos : Integer;
begin
//pour eviter les time-out
  sleep(timetosleep);
  SetArrayLength(listeMessagesF,2);
  SetArrayLength(listeMessagesS,2);
  listeMessagesF[0] := '<b>Acteurs';
  listeMessagesF[1] := '<h5 style=';
  listeMessagesS[0] := '<b>Acteurs';
  listeMessagesS[1] := '<h5 style=';

//charge la page
  Line := GetPage(pageCasting);
  if CanSetField(fieldActors) then
  begin
    if Pos(retourneElement(0), Line) > 0 then
    begin
//liste des acteurs
      BeginPos := Pos(retourneElement(0), Line);
      Delete(Line, 1, BeginPos);
      BeginPos := Pos('<h5>', Line);
      liste := '';
      repeat
        BeginPos := Pos('<h5>', Line);
        delete(Line,1,BeginPos-1);
// le role
        Role := formatTitre(findInfo('<h5>', '</h5>', Line,'0'),GetOption('Format du Titre'));
// le nom de l'acteur
        BeginPos := Pos('</h5>', Line);
        delete(Line,1,BeginPos);
        Acteur := formatTitre(findInfo('<h5>', '</h5>', Line,'0'),GetOption('Format du Titre'));
// couple acteur (rôle)
        if (Role <> '') then
          couple := Acteur +' ('+Role+'), '
        else
          couple := Acteur +', ';
// ajout du couple dans la liste
         liste := liste + couple;
         delete(Line, 1, Pos('</h5>', Line));
         BeginPos := pos('<h5>', Line);
         OtherPos := pos('</table>', Line);
      until (BeginPos > OtherPos);
      EndPos := length(liste);
      liste := copy(liste,1,EndPos-2)+'.';
      MonSetField(fieldActors, liste);
    end;
  end;
// le producteur
  if CanSetField(fieldProducer) and (pos('casting_gen_cserie',pageCasting) = 0) then
        MonSetField(fieldProducer, formatTitre(StringReplace(findInfo('<h5>Producteur', '</tr>', Line,'0'), '	', ''),GetOption('Casse Choisie')));
end;
Je n'ai pas le temp de le tester à fond mais ça à l'air de marcher...

EDIT : petite modif de la récupération du producteur qui reste incomplète (je verrai ça demain si personne ne le fait)

Posted: 2006-07-13 23:08:57
by LeMoi
baffab, tu saurais poster l'ifs correspondant ? merci d'avance ^^

Posted: 2006-07-14 07:25:09
by sellige
ok
J'ai téléchargé le fichier ScorEpioNCommonScript.pas et je n'ai plus d'erreur

J'attends que le fichier Allocine-fr.ifs soit mis à jour (pb acteurs) pour le télécharger.

Posted: 2006-07-14 07:58:37
by baffab
Version corrigée pour la récupération des acteurs (et de l'image) : allocine.ifs

Posted: 2006-07-14 08:04:18
by sellige
oui ça fonctionne
merci

Posted: 2006-07-15 09:59:44
by xbirdtrip
J'ai un petit bug avec le script de baffab pour Allociné. Lors de la récupération du nom du producteur ça me rajoute un "carré" devant le nom du producteur. J'ai essayé de le mettre dans ce post, mais le copier/coller me donne un espace :hum:
D'autre part lors de la récupération complète des noms d'acteurs ça me rajoute une virgule à la fin de la liste. Ce problème est présent depuis la création de ce script par Scorpion il me semble.