1
# .ebrc: le fichier de configuration pour edbrowse (version 2.2 ou au-dessus)
2
# C'est un fichier exemple.
3
# Ce fichier contient des mots de passe.
4
# Assurez-vous qu'il ne soit pas lisible par d'autres
6
# (Evidemment, les mots de passe de cet exemple sont faux...)
8
# -----------------------------------------------------------------------
10
# D'abord les comptes mail : j'en ai plusieurs
11
# Le compte principal, chez mon fournisseur d'accès
12
# Vous y accédez via -m1.
13
# Le compte suivant est is -m2, et ainsi de suite.
16
# Le serveur pop3 et le serveur smtp, pas forcément identiques.
17
inserver = mail.comcast.net
18
outserver = smtp.comcast.net
19
# nom d'utilidateur et mot de passe
22
# qui est l'expéditeur ? Votre nom, et une adresse de réponse.
23
# il est maintenant de illégal de créer unemail, ainsi assurez-vous
24
# que c'est vraiment votre nom, et assurez-vous que l'adresse de réponse
25
# est bien l'un de vos comptes mail, ou qu'il est ré-expédié.
27
reply = kdahlke189603@comcast.net
31
# mon compte personnel.
32
# un deuxième compte chez mon fournisseur d'accès
35
inserver = mail.comcast.net
36
outserver = smtp.comcast.net
37
# quand j'envoie un mail, c'est le compte par défaut
42
reply = eklhad@comcast.net
46
# le compte de mon épouse
47
# je teste de temps en temps, évidemment avec sa permission
50
inserver = mail.comcast.net
51
outserver = smtp.comcast.net
55
reply = kdwife@comcast.net
58
# mon compte au travail
59
# L'alias "un_autre" est défini dans le fichier /etc/hosts.
60
# Vous pouvez faire pareil, ou définir le nom complet du serveur
61
# comme j'ai fait pour comcast.
66
login = karl.dahlke@my-work-domain.com
69
reply = karl.dahlke@my-work-domain.com
73
# les mails qui viennent de mes autres sites web
74
# on commence par le site consacré aux maths
77
inserver = mail.comcast.net
78
outserver = mail.comcast.net
82
# tout le courrier adressé à MathReference email m'est ré-expédié.
83
reply = webmaster@mathreference.com
87
inserver = mail.comcast.net
88
outserver = mail.comcast.net
91
# mon épouse et moi gérons ensemble ce site.
92
from = Karl and Wendy Dahlke
93
reply = webmaster@scrapsayings.com
96
# un compte mail associé à mon domaine privé, indépendant de mon FAI
97
# il est redirigé par mon FAI
100
inserver = mail.comcast.net
101
outserver = mail.comcast.net
105
reply = eklhad@comcast.net
108
# -----------------------------------------------------------------------
110
# Terminé pour les comptes mail
111
# Ci-dessous, mon carnet d'adresses
112
# le format est alias:adresse mail:autres champs.
114
adbook=/home/eklhad/outside/adbook
116
# -----------------------------------------------------------------------
118
# répertoire de réception du courrier
120
maildir = /home/eklhad/mbox
122
# -----------------------------------------------------------------------
124
# addresses ip en liste noire
126
ipblack=/home/eklhad/outside/ipblack
128
# -----------------------------------------------------------------------
130
# récipient des cookies - où sont stockés les cookies http .
131
# Ce fichier contient des motes de passe, mettez-le en 0600
132
# ne touchez pas à ce fichier, sauf si vous savez ce que vous faites
134
jar = /home/eklhad/outside/cookies
136
# -----------------------------------------------------------------------
138
# attendre 30 secondes la réponse d'un serveur web
140
# attendre 3 minutes la réponse d'un serveur mail mail
143
# -----------------------------------------------------------------------
145
# stockage des spams. C'est un fichier dans ma corbeille
146
# ainsi je suis sûr qu'il est nettoyé chaque semaine
148
spamcan = /home/eklhad/.recycle/spamcan
150
# -----------------------------------------------------------------------
152
# redirection des mails à partir de l'expéditeur ou du compte de destination
155
fred flintstone > fredmail
156
fred.flintstone@bedrock.us > fredmail
163
support@my-side-business.com > support
164
sales@my-side-business.com > sales
165
@my-side-business.com > business
166
me@my-regular-dayjob.com > work
169
# -----------------------------------------------------------------------
171
# Description des types mime et des programmes associés
172
# pour des raisons évidentes, il n'y a que l'audio qui m'importe
176
desc = fichier audio au format wave
178
# l'étoile est remplacée par l'extension au lancement
179
program = play -t * -
184
desc = fichier audio au format mp3
186
#program = mpg123 -q -
187
# la ligne ci-dessus fonctionne, tout dépend du player
188
# certains players mp3 ne fonctionnet pas bien
189
# lorsqu'on leur passe les données via un pipe
190
# Lorsque les données provienne d'un fichier,
191
# ils répondent mieux aux ordres clavier
192
# pour s'interrompre, revenir en arrière etc.
193
# J'ai donc inventé le caractère spécial % à la fin
194
# lequel devient un fichier temporaire avec la bonne extension
195
program = mpg123 -q %
196
# et on fait la même chose que précédemment
198
# Vous n'aurez donc pas besoin du "-t *"
199
# parce que le fichier temporaire a la bonne extension
200
# que le player comprend
204
# le < force le fichier à être un flot,
205
# sans quoi c'est l'url qui est passée au programme
206
type = <audio/x-pn-realaudio
213
# -----------------------------------------------------------------------
215
# Accès à la base de données : spécifie le nom de la base,
216
# le nom d'utilisateur et le mot de passe
218
database = nom_base,nom_utilisateur,mot_de_passe
220
# extraits de la table clients de la base nom_base
221
# consultez la documentation de edbrowse pour en savoir plus
225
# cnm est le code de la table abrégé
226
# je veux un code, parce j'aurais à le taper souvent
228
cols = custnum,firstname,lastname
229
# spécifie l'index primaire, dans ce cas la 1ère colonne
235
# tout ce qui m'intéresse ici est le n° de client et sa date de naissance
237
cols = birthdate,custnum
241
# -----------------------------------------------------------------------
243
# Beaucoup de sites utilisent javascript pour des effets visuels
244
# et ce javascript tend à se compliquer, que je ne peux généralement pas
245
# analyser correctement, et donc on obtient une quantité d'erreurs gênantes
246
# Vous pouvez le désactiver site par site
247
# Notez, vaut mieux space.com que www.space.com
248
# à moins qu'il existe un foo.space.com, pour lequel vous avez besoin de
256
# Chaque fois que vous chargez une page web de l'internet
257
# votre navigateur s'identifie auprès de l'hôte
259
# Edbrowse s'identifie lui-même comme "edbrowse/2.1.3",
260
# où le numéro après le slash signifie la version courante d'edbrowse
261
# Tout cela est bel et bon, mais certains sites n'ont aucun respect pour
263
# Ils ne vous laissent pas entrer tant que vous ne ressemblez pas
264
# à Internet Explorer ou Netscape
265
# Clickbank.com, un site de gestion de cartes bancaires, en est un exemple
266
# Alors que fait-on ? On ment !
267
# Vous pouvez définir plusieurs agents dans ce fichier de config
268
# et les activer avec la commande `ua' (user agent).
269
# Les lignes qui suivent vous permettent de taper
270
# ua1 pour se faire passer pour lynx, ua2 pour Mozilla.
271
# Tapez ua0 pour ressusciter l'identification standard d'edbrowse.
273
agent = Lynx/2.8.4rel.1 libwww-FM/2.14
274
agent = Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90)
276
# -----------------------------------------------------------------------
278
# Ok, vous êtes prêts à écrire votre premier script
279
# On commence par quelque chose de simple
280
# Supprimer les fins de ligne dos et décoder un fichier word
281
# Nul doute qu'un expert de Windows pourrait m'aider ici.
288
# traite l'apostrophe
290
# élimine tout ce qui non-assi
291
# Désolé d'être aussi centré sur l'Anglais
292
# Cela va vous gêner si vous lisez un document Word en espagnol (et en français),
293
# vous perdrez les lettres non-ascii
294
,s/[\0-\11\13\14\16-\37\200-\377]//g
295
# Ensuite, il y a beaucoup de lignes vides
297
# Séparez les lignes après les retours-chariot.
299
# éliminez toutes les déchets restants
303
# -----------------------------------------------------------------------
305
# Une fonction pour accéder à google
306
# Tout le fait, tout le temps
307
# J'appelle la page d'entrée, tape quelques mots-clé,
308
# met le niveau de débogage à db2,
309
# et j'appuie sur le bouton chercher
310
# Ce qui me donne l'url
311
# C'est ce que fait ce sui suit, en y mettant ~0.
312
# ~0 remplace tous les arguments, en d'autres termes, le reste de la ligne.
313
# Ainsi <gg éléphants tigres appelle google,
314
# pour chercher "éléphants tigres".
317
b www.google.com/search?q=~0&hl=n&btnG=Google+Search&meta=
318
# Ok, on a récupéré la page google.
319
# Comment le sait-on ? Regardez plus haut la ligne "function".
320
# Le signe + signifie stop s'il y a des erreurs
321
# Arrivé ici, je suppose qu'il n'y a eu aucune erreur
322
# Google a renvoyé les résultats
323
# Mais il y a plein de texte qui ne m'intéresse pas
324
# Aussi j'ai écrit une fonction de nettoyage de google
325
# qu'on va appeler maintenant
326
# Même si la fonction n'a pas été définie auparavant, cela fonctionne
327
# les références en avant sont permises
331
# La fonction de nettoyage des résultats google
332
# appelée dès que vous avez accédé à google
333
# mais vous voudrez l'appeler une nouvelle fois,
334
# pour les 10 prochains résultats
335
# et les 10 suivants, etc.
336
# Voilà pourquoi j'en ai fait une fonction séparée
337
# Regardez la définition de la fonction et notez, pas de signe +
338
# Cela signifie que l'éxécution de la fonction se poursuivra,
339
# même s'il y a des erreurs
340
# Ceci nous permet d'effacer certaines lignes, si elles sont présentes
341
# Et si elles n'y sont pas, on a une erreur, et on continue.
342
# Ce n'est pas compliqué
345
# TODO : vérifier les messages sur google.fr
346
# on se débarrasse des avertissements concernant les pdf
347
g/^Your browser may not have a PDF reader available.$/d
348
g/^{Similar pages}$/d
349
# les lignes après "suivant", peuvent disparaître
351
# les lignes du début et les stats peuvent disparaître
352
1,/Résultats [\d.]+ secondes/d
353
# déplace "Essayez avec cette orthographe" à la fin. On doit le garder
354
/^Essayez avec cette orthographe:$/,/^DEssayez avec cette orthographe:$/+2m$
355
# encore des messages au départ dont nous n'avons pas besoin
356
1,/^Categor[iesy]+: *|/d
357
1,/{See your message here...}/d
358
1,/^|Liens commerciaux$/d
359
# Les deux premières lignes non vides et la 1ère ligne vide peuvent disparaître
363
# remt "Essayez avec cette orthographe" en tête, si la ligne existe
364
/^Did you mean:$/,$m0
367
# -----------------------------------------------------------------------
369
# chercher dans le dictionnaire mariam-webster
372
# Vous ne pouvez le voir, mais il y a un caratère de contrôle
373
# entre "dictionary" et "book".
374
# Ceci signifie qu'on emploie la méthode POST, au lieu de GET
375
b www.m-w.com/cgi-bin/dictionarybook=Dictionary&va=~1
380
/^{Get the Word of the Day/,$d
381
1,/^Click on the Collegiate Thesaurus tab to look up the current word/+2d
383
1,/^One entry found for/+d
384
1,/^Suggestions for/-d
387
# -----------------------------------------------------------------------
389
# Nettoyage d'un article de www.space.com.
390
# if(*) signifie exécute si la commande précédente a réussi
391
# if(?) signifie exécute si la commande précédente a échoué
392
# Si on obtient... ?, c'est une question
393
# signifie qu'il y a eu une erreur
394
# Idem pour while(*), until(*), etc.
395
# Il y a auusi une construction loop(n) ,pour répéter quelque chose n fois.
398
# ce qui est à la fin peut disparaître
399
/^{Add these headlines to your site}$/,$d
400
# Tout ce qui est au début, avant le mot posted, peut disparaître
403
# la première ligne est maintenant la date, peut disparaître
405
# et maintenant une ligne vide
408
# On ne s'intéresse pas à la section appelée images, insérée
409
# après le premier paragraphe de l'article
410
/^| *Images\|More Stories$/d
412
# détruit quelques sections avant cette ligne, et après
413
?^|SCIENCE TUESDAY\||TECH WEDNESDAY$?,-d
414
.,/{>>Uplink your views}/d
418
.,/^| *More Stories$/d
419
.,/^| *Related SPACE.com STORIES$/d
420
.,/^| *Related Links$/d
427
# et maintenant, affiche l'article