IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AppleScript Discussion :

Parse html + autres opérations


Sujet :

AppleScript

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Responsable d'application
    Inscrit en
    Juillet 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Responsable d'application

    Informations forums :
    Inscription : Juillet 2016
    Messages : 4
    Par défaut Parse html + autres opérations
    Bonjour à tous,

    Je n'ai encore jamais touché à AppleScript et j'essaie de me lancer dans un petit programme.

    Voici ce que j'aimerais faire :

    1. Me connecter à un site internet "http://monsite.fr"
    2. Récupérer le code source de ce site
    3. Parcourir ce code source, trouver les lignes contenant le lien "http://monsite.fr/profile/xxxxxx" (où les xxxxxx sont numériques)
    4. Ouvrir un nouvel onglet dans Safari avec l'adresse récupérée juste au dessus


    Voici là où j'en suis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    tell application "Safari"
    	open location "http://monsite.fr"
    	activate
    end tell
    delay 5
    tell application "Safari" to set my_html to source of document 1
    Donc je récupère bien le code source de la page (étapes 1 et 2). Par contre, je bloque pour parser le code html récupéré (étape 3) et ouvrir le nouvel onglet qui m'intéresse à chaque fois que je rencontre la fameuse chaine de caractères (étape 4).

    Un petit coup de main ?

    Merci d'avance !

  2. #2
    Membre émérite

    Homme Profil pro
    Directeur de projet
    Inscrit en
    Septembre 2010
    Messages
    606
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Septembre 2010
    Messages : 606
    Par défaut
    Bonjour,
    Pour parser un texte, tu disposes en AS de 2 méthodes:

    1 Utiliser les Applescript text item delimiters:
    Tu définis le ou les caractères qui doivent séparer les morceaux de texte. Par exemple le texte suivant : "convertir automatiquement les liens dans le message"
    Si le delimiter est {" "} c'est à dire un espace, l'item text 1 sera "convertir", le 2 sera "automatiquement,...donc simplement les mots (dans ce cas, tu peux utiliser le prédéfini "word" - ici c'est juste un exemple)
    Si le delimiter est {"ti"}, l'item text 1 sera "conver", l'item text 2 sera "r automa", l'item text 3 sera "quement les liens dans le message"
    C'est très puissant car tu peux définir une liste de delimiters. par exemple {"ti","n"} donnera les items "co" , "ver", "r automa", "queme", "t les lie", "s dans le message"

    2 utiliser la fonction offset qui indique, la position d'un sous texte dans un text donné. Elle s'utilise conjointement à l'instruction "text x thru y of" qui extrait le sous texte du caractère x au caractère y.

    Voici quelques exemple pour la syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    set T to "ceci est un texte"
    
    set Part1 to text 6 thru 8 of T-- extrait les caractères de 6 à 8 -> "est"
    
    
    set Part1 to offset of "est" in T-- trouve la position de "est dans le texte -> 6
    
    
    set AppleScript'stext item delimiters to {"est"}
    set Part1 to text item 1 of T-- le premier item est "ceci "
    set Part2 to text item 2 of T-- le second item est " un texte"
    Ceci étant, dans ton cas précis, ton texte est d'un type spécial, html ou java. Il serait peut être plus efficace, selon la complexité du contenu de ta page web, de passer par des fonctions du type "get element" de javascript.

    Cordialement

Discussions similaires

  1. Réponses: 7
    Dernier message: 09/10/2009, 14h12
  2. parsing HTML en JS entre IE/FF
    Par gunthar dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/06/2008, 11h55
  3. HTMLCXX & Parsing HTML
    Par Eric45 dans le forum C++
    Réponses: 1
    Dernier message: 13/11/2007, 18h28
  4. Réponses: 2
    Dernier message: 31/07/2007, 15h53
  5. Insertion d'XML dans de l'HTML (autre cas)
    Par a028762 dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 28/08/2005, 10h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo