[REL] [EN] [FR] Centralisation ScorEpioN [-SEN-]

If you made a script you can offer it to the others here, or ask help to improve it. You can also report here bugs & problems with existing scripts.

Vous trouvez ces scripts :

Excellents
87
97%
A améliorer
3
3%
Nuls
0
No votes
 
Total votes: 90

SiX-P4cK
Posts: 6
Joined: 2006-05-25 13:48:51

Post 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? :??:
draco31.fr
Posts: 191
Joined: 2005-08-11 19:27:15
Location: Toulouse (31), France

Post 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 :/
SiX-P4cK
Posts: 6
Joined: 2006-05-25 13:48:51

Post 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:
ScorEpioN
Posts: 264
Joined: 2004-08-17 11:02:02

Post by ScorEpioN »

J'attends un peu et je mets à jour ;)
acteo
Posts: 12
Joined: 2005-10-12 21:52:32

Post by acteo »

Bonjour,
Je venais justement pour signaler ce problème... trop tard ... déjà. Bon et beau boulot ! Merci et bravo à tous !
baffab
Posts: 339
Joined: 2005-12-22 09:33:25
Contact:

Post 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 !
draco31.fr
Posts: 191
Joined: 2005-08-11 19:27:15
Location: Toulouse (31), France

Post 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
Stroumph83
Posts: 2
Joined: 2006-07-08 09:10:29

Post 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
draco31.fr
Posts: 191
Joined: 2005-08-11 19:27:15
Location: Toulouse (31), France

Post 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 ;)
Stroumph83
Posts: 2
Joined: 2006-07-08 09:10:29

Post by Stroumph83 »

Merci ! Tout est ok !
baffab
Posts: 339
Joined: 2005-12-22 09:33:25
Contact:

Post 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
antp
Site Admin
Posts: 9629
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post 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.
baffab
Posts: 339
Joined: 2005-12-22 09:33:25
Contact:

Post 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:
sellige
Posts: 7
Joined: 2005-10-08 10:28:05

Post 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...
baffab
Posts: 339
Joined: 2005-12-22 09:33:25
Contact:

Post 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)
LeMoi
Posts: 171
Joined: 2006-04-09 11:26:43

Post by LeMoi »

baffab, tu saurais poster l'ifs correspondant ? merci d'avance ^^
sellige
Posts: 7
Joined: 2005-10-08 10:28:05

Post 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.
baffab
Posts: 339
Joined: 2005-12-22 09:33:25
Contact:

Post by baffab »

Version corrigée pour la récupération des acteurs (et de l'image) : allocine.ifs
sellige
Posts: 7
Joined: 2005-10-08 10:28:05

Post by sellige »

oui ça fonctionne
merci
xbirdtrip
Posts: 38
Joined: 2003-05-01 19:00:04
Contact:

Post 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.
Post Reply