[anniversaire] Où est Charlie ?
- greygjhart
- Jamais loin d'ici
- Messages : 95
- Enregistré le : sam. mai 23, 2009 2:03 pm
- Localisation : Terre
Re: [anniversaire] Où est Charlie ?
Bon, ben... c'est un échec pour moi aussi... enfin au moins j'ai déterré pleins de chouettes images que j'aurais probablement jamais vu sinon.
deadal, comment t'as fait ??
deadal, comment t'as fait ??
'''The road goes ever on,,,
-
- Scotché au forum
- Messages : 346
- Enregistré le : sam. mai 09, 2009 12:42 am
- Localisation : Grâce à mon iPhone // Derrière mon bôôôô MBP
Re: [anniversaire] Où est Charlie ?
Snif...j'avais fini le "Forum : mode d'emploi", "Présentation", "Megaminx", "Rubik's Pocket (2x2x2)", "Rubik's Professor (5x5x5)", "Square One (Cube 21)", "Temps et méthodes" et j'en ai pas trouvé un seul :'(
"One Cube to rule them all, One Cube to find them, One Cube to bring them all and in the darkness bind them"
Best Single : 13.74
Best Average : 23.62
Best Single : 13.74
Best Average : 23.62
- deadalnix
- Unix Cube
- Messages : 7316
- Enregistré le : sam. nov. 11, 2006 10:44 pm
- Localisation : Par GPS
- Contact :
Re: [anniversaire] Où est Charlie ?
Alors voila comment j'ai trouvé charlie. Attention, faut avoir « un peu » de place sur son disque dur. Cette méthode fonctionne avec tout système d'exploitation sérieux, GNU/Linux, MacOS X, BSD, Solaris, . . . Il se peut que vous ayez des soucis avec des système défaillants et dépassés malheureusement installés par défaut sur la plupart des ordinateurs vendus.
Étape 1 : faire un programme qui récupère un topic :
On notera bien qu'avec zogzog -O - on peut s'affranchir de télécharger les topics, mais c'est mieux ainsi. Vous noterez aussi que le fait que le topic ai déjà été téléchargé ou non est testé, et donc qu'on peut lancer ce programme plusieurs fois sur le même topic sans surcharger francocube.
Ensuite, il nous faut un programme pour extraire els images d'un topic :
Donc, on lis les topics, on ne garde que l'intérieur des posts, la ou il y a des images, on élimine les signatures et les smileys et on sauve tout ça dans topicid.img
Et enfin, il nous faut un programme pour automatiser tout ça sur tout plein de topics :
5268 est le numéro de ce topic, on s'arrête donc a lui.
Attention, ce programme est une fork bomb, ne le lancez que si vous savez vraiment ce que vous faites ! Les topic sont récupérées un par un pour ne pas créer de charge importante sur le serveur, par contre, le traitement se fait en parallèle du téléchargement.
Si vous modifiez du code quelque part, vous pouvez relancer ce programme plein de fois, puisque les topic ne seront pas retéléchargés.
Enfin, c'est bien beau tout ça, mais ça nous donne environs 15 000 fichiers sur le disque dur, et on va pas les éplucher à la main ! Nous allons donc récupérer les images postés par tout le monde :
On note que je me suis placé ici dans un sous dossier afin de ne pas mettre tout le merdier au même endroit. Donc il nous reste a aller voir dans ce fameux dossier et a trouver Charlie. Les conaisseurs noterons la subtilité du script ^^. Une fois Charlie trouvé, il va nous falloir son URL complète (et la je fais Naaaaaaaaannnnnnn, et dire que depuis le début j'aurais pu savoir ça grâce à mes supers pouvoirs !) :
Et enfin chercher cette URL dans les topics :
Et voila, vous savez dans quel topic est charlie et a quelle page. Vous n'avez plus qu'a aller voir
Étape 1 : faire un programme qui récupère un topic :
Code : Tout sélectionner
#!/bin/bash
topicid=$1
if [ -z $1 ]
then
exit
fi
if [ -e topic$topicid.html ]
then
echo 'nothing to do'
else
zogzog https://forum.francocube.com/topic$topicid.html --quiet
./gettopic `cat topic$topicid.html | grep page-sep | grep Suivante | sed 's@^.*<a href="https://forum.francocube.com/topic\(.*\)\.html">Suivante</a>.*$@\1@g'`
fi
Ensuite, il nous faut un programme pour extraire els images d'un topic :
Code : Tout sélectionner
#!/bin/bash
topicid=$1
if [ -z $1 ]
then
exit
fi
if [ -e topic$topicid.html ]
then
topic=`echo $topicid | sed 's@^\([0-9]*\).*$@\1@'`
cat topic$topicid.html | grep postbody | grep img | grep -v 'taille limite signature' | grep -v '/images/smilies/' >> $topic.img
./analysetopic `cat topic$topicid.html | grep page-sep | grep Suivante | sed 's@^.*<a href="https://forum.francocube.com/topic\(.*\)\.html">Suivante</a>.*$@\1@g'`
fi
Et enfin, il nous faut un programme pour automatiser tout ça sur tout plein de topics :
Code : Tout sélectionner
#!/bin/bash
topic=$1
if [ -z $1 ]
then
topic=1
fi
echo $topic
if [ $topic = '5268' ]
then
exit
else
./gettopic $topic
./dumpforum $(($topic+1)) &
./analysetopic $topic
fi
Attention, ce programme est une fork bomb, ne le lancez que si vous savez vraiment ce que vous faites ! Les topic sont récupérées un par un pour ne pas créer de charge importante sur le serveur, par contre, le traitement se fait en parallèle du téléchargement.
Si vous modifiez du code quelque part, vous pouvez relancer ce programme plein de fois, puisque les topic ne seront pas retéléchargés.
Enfin, c'est bien beau tout ça, mais ça nous donne environs 15 000 fichiers sur le disque dur, et on va pas les éplucher à la main ! Nous allons donc récupérer les images postés par tout le monde :
Code : Tout sélectionner
zogzog `cat ../*.img | sed 's@"@\n@g' | grep ^http`
Code : Tout sélectionner
cat ../*.img | sed 's@"@\n@g' | grep ^http | grep NOMIMAGE
Code : Tout sélectionner
grep topic*.html -e URL
Modifié en dernier par deadalnix le mer. juil. 01, 2009 11:54 am, modifié 6 fois.
- Trukinette
- Né sur ce forum
- Messages : 174
- Enregistré le : dim. févr. 08, 2009 6:46 pm
Re: [anniversaire] Où est Charlie ?
Il y a des tarés dans la vie ou des gens qui n'ont rien à faire....
3*3*3 : PB: 01:19:20/Average : 01:52:99
Re: [anniversaire] Où est Charlie ?
D'ou :deadalnix a écrit :Cette méthode fonctionne avec tout système d'exploitation sérieux, GNU/Linux, MacOS X, BSD, Solaris, . . . Il se peut que vous ayez des soucis avec des systèmes défaillants et dépassés malheureusement installés par défaut sur la plupart des ordinateurs vendus.
On est d'accord.R.Koothrappali, 5 pages plus tôt, a écrit :Sachant que je suis pas sous nux la , ca va être compliqué
Je suis l'homme puma
- Nostra
- Tendinites cubeur
- Messages : 2892
- Enregistré le : mer. juin 27, 2007 9:11 pm
- Localisation : Toulouse
- Contact :
Re: [anniversaire] Où est Charlie ?
Même dans des balises code?deadalnix a écrit : EDIT: haha, je peux pas poster mes scripts, ça fait buguer le forum
Dommage j'étais intéressé...
Sinon même juste la logique?
- PhoeniX
- Passe sa journée ici. Et dort ici, aussi
- Messages : 599
- Enregistré le : mer. mars 26, 2008 5:32 pm
- Localisation : Clermont
Re: [anniversaire] Où est Charlie ?
Vi, je plussois Nostra, explique nous au moins le principe.
- deadalnix
- Unix Cube
- Messages : 7316
- Enregistré le : sam. nov. 11, 2006 10:44 pm
- Localisation : Par GPS
- Contact :
Re: [anniversaire] Où est Charlie ?
Même dans les balises code !Nostra a écrit :Même dans des balises code?deadalnix a écrit : EDIT: haha, je peux pas poster mes scripts, ça fait buguer le forum
Dommage j'étais intéressé...
Sinon même juste la logique?
Mais j'ai trouvé le problème et l'ai remplacé par zogzog.
- WydD
- D@cteur WydD
- Messages : 2195
- Enregistré le : sam. janv. 24, 2009 9:42 pm
- Localisation : Paris
- Contact :
Re: [anniversaire] Où est Charlie ?
Bon ben c'est ce que j'avais prévu plus ou moins mais j'ai été pris de grande flemme
3x3 VH / 2x2 CLL / BLD full-3-cycles
Délégué WCA France
Délégué WCA France
- Nencaran
- A trouvé Charlie et Gprano
- Messages : 562
- Enregistré le : dim. nov. 02, 2008 11:54 pm
- Localisation : Nantes
- Contact :
Re: [anniversaire] Où est Charlie ?
Sinon il suffit d'éplucher les bons sous-forums et les bons topics.
C'est pas si long
C'est pas si long
- greygjhart
- Jamais loin d'ici
- Messages : 95
- Enregistré le : sam. mai 23, 2009 2:03 pm
- Localisation : Terre
Re: [anniversaire] Où est Charlie ?
ouaaaaah la classe deadalnix...
bon ba il va falloir que je me penche sérieusement sur les commandes bash... quel noob je fais. Enfin bravo à toi c'est beau tous ces scripts...
bon ba il va falloir que je me penche sérieusement sur les commandes bash... quel noob je fais. Enfin bravo à toi c'est beau tous ces scripts...
'''The road goes ever on,,,
- WydD
- D@cteur WydD
- Messages : 2195
- Enregistré le : sam. janv. 24, 2009 9:42 pm
- Localisation : Paris
- Contact :
Re: [anniversaire] Où est Charlie ?
Euh ouais, la notion de beau est bof quand même... c'est du bash ne l'oublions pas !greygjhart a écrit : bon ba il va falloir que je me penche sérieusement sur les commandes bash... quel noob je fais. Enfin bravo à toi c'est beau tous ces scripts...
3x3 VH / 2x2 CLL / BLD full-3-cycles
Délégué WCA France
Délégué WCA France
- greygjhart
- Jamais loin d'ici
- Messages : 95
- Enregistré le : sam. mai 23, 2009 2:03 pm
- Localisation : Terre
Re: [anniversaire] Où est Charlie ?
Ouais ben je persiste. Je comprends le fait que tu penses qu'il faille relativiser, mais si t'avais découvert ça comme moi tu trouverais ça beau je pense. Vraiment. Du genre "ah oui et là ça se goupille bien" et "là on a l'impression que ça merdouille gentiment" et en fait tout est fait pour être 'compatible'. perso j'adore. Et aussi parce que je sais encore quasiment rien faire de sérieux avec bash...
'''The road goes ever on,,,
- deadalnix
- Unix Cube
- Messages : 7316
- Enregistré le : sam. nov. 11, 2006 10:44 pm
- Localisation : Par GPS
- Contact :
Re: [anniversaire] Où est Charlie ?
C'est vrai que bash c'est un sacré truc ! Mais ça s'est développé un peu au petit bonheur la chance et ça manque de vue d'ensemble tout de même Par exemple les vieux bidouillages avec la commande [ (sisi aller voirs /bin/[) pour donner une syntaxe potable aux if, c'est quand même vraiment crade