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

Linux Discussion :

stocker le texte d'un lien internet


Sujet :

Linux

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut stocker le texte d'un lien internet
    Bonjour,
    j'ai un petit souci de programmation. J'ai un lien internet qui quand je le donne en ligne de commande dans le terminal, me donne une reponse sous forme de texte. J'aimerai stocker ce texte dans un fichier, mais je n'y arrive pas. Je programme en C et mes notions sont tres basiques.
    Voici le lien texte :
    http://www.cryst.ehu.es/cgi-bin/crys...ph-list_gen?g=[gn]&ua=[ua]∨=[or]&rh=[rha]&w=[w]

    Merci d'avance

  2. #2
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    Tu peux utiliser une librairie comme la libcurl. Tu peux aussi faire ça à la main en manipulant les sockets, c'est à peine plus compliqué pour ce que tu veux faire.

  3. #3
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 730
    Points : 31 053
    Points
    31 053
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par matafan Voir le message
    Tu peux utiliser une librairie comme la libcurl. Tu peux aussi faire ça à la main en manipulant les sockets, c'est à peine plus compliqué pour ce que tu veux faire.
    Citation Envoyé par pimousse280187 Voir le message
    J'ai un lien internet qui quand je le donne en ligne de commande dans le terminal, me donne une reponse sous forme de texte.
    Ouaip. Ou alors popen("sa ligne de commande dont il parle"). En 4 lignes c'est torché...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    FILE *fp;
    char ligne[1024];
    fp=popen("la fameuse ligne de commande", "r");
    while (fgets(ligne, 1024, fp) != NULL)
        printf("%s\n", ligne);
    fclose(fp);

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut reponse
    Bonjour,
    Tout d'abord merci pour vos réponses. Mais malheureusement cela ne fonctionne pas. J'ai repris ce que tu m'as donné en remplaçant la ligne de commande mais lorsque je lance le programme il me dit que le fichier
    http://www.cryst.ehu.es/cgi-bin/crys...=12&ua=b%w=gen n'existe pas.
    J'ai essayer de rajouter la commande get devant mais il me dit qu'elle n'est pas connue.
    Comment faire? Faut-il écrire la ligne de commande d'une maniére différente, charger une bibliothéque pour qu'il reconnaisse la commande GET?
    Merci d'avance

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    "la fameuse ligne de commande" doit être la ligne de commande que tu tapperais à la main pour récupérer le fichier. Quand tu fais ça à la main tu ne tappes pas "GET", si ? Utilise par exemple wget.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut probleme de programmation
    Merci, c'est bon j'ai reussi.
    Maintenant j'aurais aimé faire varier le chiffre qui se trouve dans la commande, en utilisant une boucle for par exemple. Mais étant donné que la commande se trouve entre guillemets, je ne sais pas comment faire varier un paramétre dedans.
    Cela est-il possible?
    Merci d'avance

  7. #7
    Membre habitué Avatar de mensoif
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 248
    Points : 129
    Points
    129
    Par défaut
    Salut, je me demande bien ce que tu veux faire, mais tu m'as l'air de te faire bien du soucis pour ton soft alors que avec du Perl se serait bien plus simple

    Sinon pour faire varier le chiffre tu utilise la chaîne à sa gauche, l'opérateur de concaténation la variable qui varie ($i par ex) + partie droite !

    En cas, sache que Perl est bien adapté pour ce genre d'action.

  8. #8
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 515
    Points : 2 505
    Points
    2 505
    Par défaut
    Pour son problème d'incrémentation j'aurais plutôt suggéré sprintf()

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Points : 5
    Points
    5
    Par défaut rep
    Bonjour et merci,
    En ce qui concerne le sprintf(), le probléme c'est que ma ligne de commande doit être incluse dans un popen().
    Ensuite pour le $i, je dois l'écrire comme cela?
    premierepartie$ideuxiemepartie
    ou
    premierepartie$i+deuxiemepartie

    Merci d'avance

  10. #10
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 730
    Points : 31 053
    Points
    31 053
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pimousse280187 Voir le message
    Bonjour et merci,
    En ce qui concerne le sprintf(), le probléme c'est que ma ligne de commande doit être incluse dans un popen().
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    char ligne[1024];
    int i;
    FILE *fp;
    for (i=0; i < 10; i++)
    {
        sprintf(ligne, "ceci_est_ma_super_commande_qui_fait_varier_%d", i);
        fp=popen(ligne, "r");
        ...
        fclose(fp);
    }
    Citation Envoyé par pimousse280187 Voir le message
    Ensuite pour le $i, je dois l'écrire comme cela?
    premierepartie$ideuxiemepartie
    ou
    premierepartie$i+deuxiemepartie
    Là je ne pige pas. T'es en shell ou en C ???

  11. #11
    Membre habitué Avatar de mensoif
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 248
    Points : 129
    Points
    129
    Par défaut
    Heu, c'est moi qui ai fait une bavure en lui mettant $i (j'avais la tête ailleurs)

    premierepartie$i+deuxiemepartie
    Donc je voulais dire

    en penssant au espace blabla utile là où il faut !

Discussions similaires

  1. Texte qui disparait sous internet explorer.
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 14/08/2005, 02h55
  2. Récupération du texte d'un lien hypertext
    Par -=ET=- dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 23/05/2005, 17h08
  3. [XSL] Lien internet
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 15/03/2005, 07h49
  4. Des styles pour le texte et les liens dans la meme div?
    Par Donkey' Shot dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 26/01/2005, 20h03
  5. Stocker du texte mis en forme dans un document XML
    Par ovh dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 13/02/2003, 10h23

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