Aide pour créer un script

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

Aide pour créer un script

Post by draco31.fr »

Bonjour à tous !

Suite aux différentes demande pour créer de nouveaux script, je vais essayer de vous proposer une liste de site pour essayer vous-même d'avancer dans la création de votre propre script ! (ce qui est bien plus satisfaisant que d'attendre qu'un autre le fasse pour vous !).

Loin de moi l'idée de faire un tuto exhaustif : ce ne sont que des pistes !
Libre à chacun d'apporter son petit plus pour le rendre plus complet !
Je ne suis ni informaticien, ni programmeur ! Je ne suis qu'un utilisateur d'Ant Movie Catalog qui adore ce logiciel !!!


Tout d'abord, il vous faut trouver le site depuis lequel vous voulez récuperer les infos.
Ensuite, le script va se décomposer en 2 grandes parties :
La partie analyse de la page des résultats, et la partie analyse de la fiche du film que vous avez sélectionner.

Mais avant de rentrer dans le vif du sujet, je vous recommande de lire l'aide faite par Antoine et jointe à Ant Movie Catalog, dans laquelle il explique chacune des fonctions propres aux scripts de AMC.
D'autre part, ScorEpioN a fait un fichier (ScorEpioNCommonScript.pas) qui compile pas mal de fonctions qu'il a créées, très utiles, vous évitant d'avoir à les refaire vous même si vous en avez l'utilité.

Les script sont en Delphi (un dérivé du Pascal) : il vous faut absoluement maitriser les bases (assez simple) de ce langage pour pouvoir faire un script.
Je ne vais pas ici vous faire un cours de programmation :
1/ Parce que je ne suis pas programmeur (j'ai appris basiquement le Pascal en 1ère année de DEUG Chimie :p )
2/ Parce que je n'en ai pas le temps :(

Voici les sites où vous pouvez trouver des infos utiles sur le Pascal/Delphi :
http://www.taoyue.com/tutorials/pascal/contents.html (tuto pour apprendre le langage Pascal)
http://www.delphibasics.co.uk/ByFunctio ... in=Numbers (pour trouver une fonction ou un opérateur existant)
http://www.freepascal.org/docs-html/ref/ref.html
http://www.irietools.com/iriepascal/progref.html
http://www.macdonald.egate.net/CompSci/ ... index.html
http://community.freepascal.org:10000/d ... dex-5.html

Ensuite il faut vous armer de patience, le mieux étant de prendre un script déja existant, et d'essayer de le déchiffrer.
Last edited by draco31.fr on 2006-04-09 16:08:51, edited 2 times in total.
draco31.fr
Posts: 191
Joined: 2005-08-11 19:27:15
Location: Toulouse (31), France

Post by draco31.fr »

Une fois que vous vous sentez prêt à commencer votre script (ou modifier un script existant), vous devez avoir :
* L'URL du site à exploiter
* La mise en forme de l'url pour soumettre une recherche
L'accès au code source de la page affichant les résultats (disponible à partir de n'importe quel navigateur web)
pour ce dernier point, préférez un logiciel qui affiche un code couleur selon le langage (HTML / Javascript etc) ce sera plus lisible ^^

Je prends comme exemple mon script sur AnimeDB.

Tout au long du script il est possible de rajouter des commentaires e faisant précéder la phrase par "//" exemple :

Code: Select all

// Voici mon 1er script ^^
Le nom du script doit être donné en premier par :

Code: Select all

program AnimeDB_EN;
Un script s'articule autour d'un "programme" principal dont l'execution commence par "begin" : ce "programme" est placé en dernier dans le script.
Ce programme peut faire appel à différentes variable/fonction ... qui sont placée entre le nom du script (1ère ligne) et le "begin".

Cela peut être :
* L'appel d'un fichier externe comme le ScorEpioNCommonScript.pas:

Code: Select all

uses
  ScorEpioNCommonScript;
* La déclaration des constantes qui seront utilisées par la suite (à vous de choisir leurs noms):

Code: Select all

const
  VersionScript = '0.1 du 06/01/2006';
  NomScript = 'AnimeDB';
  urlDomain = 'anidb.info';
toutes ces constantes seront appellées par leur nom:
par exemple quand il sera écrit dans le script "urlDomain", cela sera remplacé par "anidb.info" lors de son execution.

* La déclaration de variable (dont le contenu sera modifiable) suivi de son type (entier, "string" (texte), ...)

Code: Select all

var
  AnimeName, Titre, urlTitre, urlSearch, Resume : string;
  NumPage, i : Integer;
  Note : real;
  listeResultat : TStringList;
* Ensuite vient la déclaration des procédures/fonctions qui pourront être appellées par le programme principal : ce sont des sorte de mini-programme avec leur propre constantes/variables etc.

Code: Select all

procedure AnalyzeSearchPage(urlSearch: string);
var
  Line, PageNo : string;
  nbchoix : integer;
begin
end;

Code: Select all

function Genre(info : string): string;
var
  liste, genreok : string;
  deldebut, delfin : Integer;
begin
end;
Ensuite vient donc le programme principal proprement dit qui comence par un "begin" et finit par un "end."

Voilà pour le B-A-BA sur l'architecture d'un script !
draco31.fr
Posts: 191
Joined: 2005-08-11 19:27:15
Location: Toulouse (31), France

Post by draco31.fr »

Vous devez donc avoir quelque chose comme cela :
program NOM_DU_SCRIPT;

uses
ScorEpioNCommonScript;

// Voilà mon script

const
CONSTANTE_1 = 'valeur 1';
CONSTANTE_2 = 'valeur 2';
CONSTANTE_3 = 'valeur 3';

var
VAR_1, VAR_2 : string;
VAR_3 : Integer;
VAR_4 : real;
VAR_5 : TStringList;

// procédure n°1
procedure PROCEDURE_1(VAR_1: string);

var
VAR_6 : string;
VAR_7 : integer;

begin
Contenu de la procédure n°1
end;

// procédure n°2
procedure PROCEDURE_2(VAR_3: Integer);

var
VAR_8 : string;
VAR_9 : integer;

begin
Contenu de la procédure n°2
end;

// Fonction n°1 qui renvoie un 'texte'
function FONCTION_1(VAR_2 : string): string;

var
VAR_10 : string;
VAR_11 : Integer;

begin
Contenu de la fonction n°1
end;

// début du programme principal
begin
Contenu du programme principal
end.
Ensuite il ne vous reste plus qu'à remplir le contenu de chaque programme pour qu'il décripte le code source.
Mais ça je ne peux pasle faire pour vous ! :/
antp
Site Admin
Posts: 9642
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Re: Aide pour créer un script

Post by antp »

Bravo et merci pour ce topic, j'espère que ça pourra aider d'autres personnes :grinking:
draco31.fr wrote: Les script sont en Delphi (un dérivé du Pascal)

En fait techniquement les scripts sont dans un langage propre au moteur "Innerfuse Pascal Script", qui est un genre de simplification du Pascal/Delphi (seulement quelques fonctions sont disponibles, et des tas d'éléments du langage manquent).
Post Reply