Mass *Excellent utilisateur*
Messages : 3351 Localisation : Dans une canonnière wookie. Projet Actuel : Monter des trucs et des machins
| Sujet: Infos sur un script de Dam Dim 28 Sep 2008 - 13:23 | |
| Bonjour à tous, Dam m'a donné ce script. Il sert à rechercher tous les liens présents dans une page. - Citation :
- content = "<b>http://lecbna.org/</b>, <i>http://www.google.fr/</i>, ceci est une image les amis! http://www.lecbna.org/images/Logo_CBNA.jpg lol!"
//Tableau des dns tab_dns[0] = ".org"; tab_dns[1] = ".com"; tab_dns[2] = ".fr";
do { //Recherchons les positions de http://, puis celles de .org, .fr ou .com pos_http = string_pos("http://",content); pos_dns = string_length(content); //Initialisation pos_dns à la valeur la plus haute.
//Recherchons parmi les différents types de dns le .something le plus proche de notre premier http. var i; for (i=0;i<=2;i+=1) { if (pos_dns > string_pos(tab_dns[i],content) && string_pos(tab_dns[i],content) != 0) { pos_dns = string_pos(tab_dns[i],content); dns = string_length(tab_dns[i]);//Stocker la longueur du dns trouvé. } } //Sortir l'adresse trouvée... website = string_copy(content,pos_http,pos_dns-pos_http+dns); show_message(website); //... puis recommencer, mais avant couper la chaîne à la position de pos_dns + longueur dns. content = string_delete(content,1,pos_dns+dns-1); show_message("Contenu .::. "+content);
} until (string_pos("http://",content) == 0) Seulement voilà, j'ai modifié le script pour qu'il enregistre chaque site dans un fichier ini. Mais j'aimerais que quand il a répertorié tous les liens, il éxécute un script, qui ira alors indexer ceux-ci... Où l'insérer ? :pac_dr: |
|
daminetreg Administrateur
Messages : 16998 Localisation : Siege du CBNA! Projet Actuel : Site Web du CBNA, version beta :
| Sujet: Re: Infos sur un script de Dam Mar 14 Oct 2008 - 8:47 | |
| Bah facile, tu mets mon script dans une boucle while(!file_text_eof(file)), c'est à dire tant qu'il n'est pas arrivé à la fin du fichier. Dans la quelle tu fais: file_text_read_string(file), puis une fois que tu as lu la ligne contenant ton adresse tu passe à la ligne suivante, pour le prochain passage de la boucle, à l'aide de: file_text_readln(file); Enfin tu appelles ton script de récupération de contenu de ta page web, que tu mets dans content, puis ma boucle do, until. Quelque chose du genre, j'ai pas trop le temps: - Code:
-
//Tu ouvres la lecture du .txt ici avec file_text_open_quelquechose
//Tableau des dns tab_dns[0] = ".org"; tab_dns[1] = ".com"; tab_dns[2] = ".fr";
while ((!file_text_eof(file))) { pageweb = file_text_read_string(file);
//Sauter à la ligne suivante pour le prochain passage de la boucle file_text_readln(file);
content = script_retournant_lecontenudunepage(pageweb);
do { //Recherchons les positions de http://, puis celles de .org, .fr ou .com pos_http = string_pos("http://",content); pos_dns = string_length(content); //Initialisation pos_dns à la valeur la plus haute.
//Recherchons parmi les différents types de dns le .something le plus proche de notre premier http. var i; for (i=0;i<=2;i+=1) { if (pos_dns > string_pos(tab_dns[i],content) && string_pos(tab_dns[i],content) != 0) { pos_dns = string_pos(tab_dns[i],content); dns = string_length(tab_dns[i]);//Stocker la longueur du dns trouvé. } }
//Sortir l'adresse trouvée... website = string_copy(content,pos_http,pos_dns-pos_http+dns); show_message(website);//Ici tu peux mettre un petit bout de code à la place du show message, qui écrit dans ton fichier. //... puis recommencer, mais avant couper la chaîne à la position de pos_dns + longueur dns. content = string_delete(content,1,pos_dns+dns-1); show_message("Contenu .::. "+content);
} until (string_pos("http://",content) == 0)
} _________________ Mon CV : fr - de - en Tous Ensemble! Réalisons! |
|