Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
861 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Extraire une ligne d'une page web vers un fichier texte

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Extraire une ligne d'une page web vers un fichier texte

n°1980932
kandy3
Posté le 05-04-2010 à 15:01:40  profilanswer
 

Bonjour,
je voudrais savoir s'il est possible d'extraire une ligne d'une page web vers un fichier texte... je m'explique :
J'ecoute une radio sur internet, et les titres diffusés en direct s'affichent en haut sur le site (site en question : http://urgent.fm/). Comme je ne suis pas toujours devant mon écran, je souhaiterais créer une playlist des titres diffusés dans un fichier texte.  
Donc il faudrait extraire la ligne de la page web, puis l'enregistrer chaque minute (avec l'heure d'enregistrement si possible) vers le fichier .txt.
En regardant le code source de la page j'ai vu que le titre etait entre balises, je ne sais pas si ca peut servir.

Code :
  1. <div id="current-song">COLLEEN - THE HAPPY SEA </div>


Voila, c'est un peu compliqué, je ne sais pas du tout avec quels outils il est possible de le faire. Je n'ai que quelques notions de programmation.
Merci d'avance !

mood
Publicité
Posté le 05-04-2010 à 15:01:40  profilanswer
 

n°1980935
sircam
I Like Trains
Posté le 05-04-2010 à 15:21:29  profilanswer
 

wget + grep + cut et/ou sed, le tout avec un cron et le tour est joué.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1980947
kandy3
Posté le 05-04-2010 à 17:05:43  profilanswer
 

merci de ta réponse, mais je n'ai jamais touché a UNIX... donc la je ne comprend pas grand chose. Tu pourrais expliquer comment faire stp?

n°1980981
sircam
I Like Trains
Posté le 05-04-2010 à 20:21:14  profilanswer
 

Fais une recherche sur ce que fait chacun de ces programmes. Il te faut 1 ligne pour faire marcher chacun! Procède avec un de ces utilitaires à la fois.
 
Commence par wget pour télécharger la page... Puis grep pour dénicher la ligne de ton premier post... C'est excessivement aisé.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1981352
kandy3
Posté le 06-04-2010 à 19:15:10  profilanswer
 

Ok, j'ai vu globalement a quoi ca servait, je regarderai + en détail ce weekend.
Merci!

n°1981389
sircam
I Like Trains
Posté le 06-04-2010 à 20:23:55  profilanswer
 

Mais c'est dans super longtemps le week-end?! [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1982852
kandy3
Posté le 10-04-2010 à 20:32:21  profilanswer
 

non c'est maintenant le weekend :)
bon j'ai cherché un peu :
wget ca marche, j'obtient le fichier index.html
mais deja grep je trouve pas la bonne commande, donc j'imagine meme pas pour tout faire fonctionner en meme temps...
 
désolé si ca parait simple pour toi, j'ai du mal  :(

n°1985132
sircam
I Like Trains
Posté le 17-04-2010 à 19:05:37  profilanswer
 

Ah heu sorry, c'est toujours d'actualité après 1 semaine? [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°1985188
kandy3
Posté le 18-04-2010 à 00:24:26  profilanswer
 

oui, c'est vrai que j'y ai pas beaucoup regardé depuis, si ce n'est que j'ai vu que grep et sed fonctionnent ensemble...
j'ai fait des essais avec cette commande pour essayer de m'afficher le texte entre les balises <h1> et </h1> :

Code :
  1. sed -n "/<h1>/,/</h1>/" index.html


... mais j'obtient des erreurs du genre "caracteres inutiles"
 
en tous cas si tu peux m'aider ca serait sympa.
bon we

n°1985208
sircam
I Like Trains
Posté le 18-04-2010 à 10:34:25  profilanswer
 

Avec grep tout seul :
 

Citation :

     -o, --only-matching
              Show only the part of a matching line that matches PATTERN.
 


On a :

karkass:~ sircam$ cat essai.txt
Bonjour
My name is #sircam# and I am lame
 
karkass:~ sircam$ grep "#.*#" essai.txt
My name is #sircam# and I am lame
 
karkass:~ sircam$ grep -o "#.*#" essai.txt
#sircam#


 
Le .* représente n'importe quelle suite de caractères


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
mood
Publicité
Posté le 18-04-2010 à 10:34:25  profilanswer
 

n°1985243
kandy3
Posté le 18-04-2010 à 16:45:49  profilanswer
 

merci de ta réponse, j'ai réussi a obtenir ca :

grep -o "current-song.*</div>" index.html
current-song">BARK - CONSTELLATIONS REMIX </div></div></div>


apres il faut encore ne conserver que le texte a l'interieur. Et comment faire pour l'inscrire dans un fichier txt ?
merci encore

n°1987395
kandy3
Posté le 25-04-2010 à 15:38:23  profilanswer
 

Bon, j'ai reussi a l'inscrire vers un fichier txt :

song">BOBBY WOMACK - ACROSS 110TH STREET </div></div><
song">no trackinfo</div></div><


Pour l'execution et la repetition de la tache j'ai trouvé comment faire, donc il ne reste plus qu'a supprimer les balises pour faire + propre...


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Extraire une ligne d'une page web vers un fichier texte

 

Sujets relatifs
Régler la taille de la longueur du texteComment compiler un fichier C#
Compiler plusieur fichier CS.parser une ligne de commande : problème avec noms génériques de fics
Récuperer l'adresse de l'entrée ligne de l'ordinateurEditer automatiquement les valeurs d'un fichier texte
Exporter un tableau Excel 2007 vers Accesshtml : créer un lien de téléchargement d'un fichier pdf [résolu]
Mise en page HTML, Google search box. 
Plus de sujets relatifs à : Extraire une ligne d'une page web vers un fichier texte


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR