Vous connaissez, surement, l'un des sites de recherche d'objets neufs ou d'occasions le plus connu, Le bon coin. Il est vrai que l'on peut y faire de bonnes affaires, en achetant ou en vendant à peu près tout ce que l'on veut ou en proposant tous types de services.
Il m'arrive, assez régulièrement, de fréquenter ce site, surtout quand je suis à la recherche de choses bien précise.
N'ayant pas la possibilité de me rendre régulièrement sur le site, tout au long d'une journée, j'ai imaginé ce soft qui a pour but d'effectuer la recherche à ma place à une date précise ou un intervalle de temps programmé. Le résultat de cette recherche est ensuite envoyé par email si de nouveaux éléments sont trouvés.
Une interface web est accessible depuis n'importe quel navigateur, afin de faciliter la gestion (Ajout, suppression et configuration) de mes recherches.
Ce programme, sous licence GPL, écrit entièrement en python, utilise différentes sources tierces pour atteindre mon but :
- CherryPy : Création et gestion d'un serveur Web minimaliste
- Genshi : Template pour la gestion des pages Web
- BeautifulSoup : Analyse d'une page internet
- Minidom : Gestion des fichiers XML qui jouera le rôle de base de données
- APScheduler : Gestion d'un ordonnanceur/planificateur de tâches
Installation
Télécharger l'archive alertes_lbc-0.1.tar.gz puis décompressez la. Pour une installation facile, avec toutes les dépendances, il faudra avoir le package python-setuptools.
# tar xvzf alertes_lbc-0.1.tar.gz # sudo apt-get install python-setuptools # cd alertes_lbc-0.1 # sudo python setup.py install
setuptools installera les dépendances manquantes nécessaires à l'utilisation du soft.
Exécution
Le soft, alertes.py, se trouve dans le dossier source de l'archive. Il est possible d'avoir de l'aide avec la commande :
# ./alertes.py --help Usage: alertes.py [options] Options: --version show program's version number and exit -h, --help show this help message and exit -l LIBELLE, --libelle=LIBELLE Libellé d'une nouvelle alerte le bon coin -u URL, --url=URL Url de recherche du site le bon coin -e EMAIL, --email=EMAIL Email d'envoi des résultats Recherche à une date précise: Format JJ/MM/AAAA HH:mm AAAA = Année MM = mois JJ = Jour HH = Heure mm = minute -d DATE, --date=DATE Date précise de format : JJ/MM/AAAA HH:mm Recherche à un intervalle de temps: -j FREQ_DAY, --jour=FREQ_DAY Intervalle de X jours entre chaque recherche -H FREQ_HOUR, --heure=FREQ_HOUR Intervalle de X heures entre chaque recherche -M FREQ_MINUTE, --minute=FREQ_MINUTE Intervalle de X minutes entre chaque recherche Option pour l'interface Web: --sans-serveur-web Ne pas démarrer le serveur web -n SERVER_HOST, --server-host=SERVER_HOST L'adresse IP pour le serveur web -p SERVER_PORT, --server-port=SERVER_PORT Le port d'écoute du serveur
Deux paramètres principaux sont à renseigner pour lancer le soft :
- l'adresse IP du serveur, par défaut, localhost
- Le port du serveur
Exemple :
# ./alertes.py -n "0.0.0.0" -p 3456 [09/Feb/2013:10:40:10] ENGINE Bus STARTING [09/Feb/2013:10:40:10] ENGINE Started monitor thread '_TimeoutMonitor'. [09/Feb/2013:10:40:10] ENGINE Started monitor thread 'Autoreloader'. [09/Feb/2013:10:40:11] ENGINE Serving on 0.0.0.0:3456 [09/Feb/2013:10:40:11] ENGINE Bus STARTED
Je lance l'écoute du serveur web sur toutes les adresses IP du réseau sur le port 3456.
ouvrez un navigateur web et entrez http://IP:PORT dans la barre d'adresse, et on obtient cette page.
Le header de la page permet de naviguer sur le serveur :
- Accueil : Page d’accueil du serveur, récapitulatif des alertes en cours
- Ajouter : Page d'ajout de nouvelles alertes
- Supprimer : Page de suppression d'une ou plusieurs alertes
- Configuration : Page de configuration pour l'envoi d'email
Le corps de la page principale donne un récapitulatif des alertes enregistrées, chaque alerte est représentée par un libellé, l'URL le bon coin de la recherche, l'email d'envoi des résultats, l'heure et la date de création de l'alerte et la fréquence de recherche.
La page Ajouter
Sur cette page, on va renseigner les champs nécessaires pour notre alerte.
- Libellé : Nom de l'alerte
- Lien URL : Le lien URL le bon coin de notre recherche
- Email : L'adresse email pour l'envoi des résultats
- Date Unique ou Intervalle de temps
Exemple d'utilisation :
Sur le site internet : le bon coin, je saisi ma recherche complète, et je clique sur le bouton CHERCHER.
La deuxième étape consiste à copier le lien internet de la recherche puis de coller le lien sur notre page ajouter et de renseigner les autres champs. Ici, j'ai configuré une recherche toutes les heures.
On clique sur le bouton Ajout, et la page principale ré-apparaît avec le récapitulatif de la recherche.
La page Configuration
Sur cette page, on va renseigner les différents champs, puis appuyer sur le bouton Configurer pour valider les paramètres :
- serveur smtp (exemple : smtp.free.fr, smtp.gmail.com, smtp.orange.fr)
- port smtp (exemple : 587)
- Sécurité d'email :
- Aucune, dans ce cas là, on ne renseigne pas les champs login et password
- STARTTLS, on va devoir renseigner le login et le password
Exemple de configuration :
- Gmail :
- serveur : smtp.gmail.com
- port : 587
- sécurité : STARTTLS
- login : adresse email gmail
- password : mot de passe de connexion
La page Supprimer
Pour supprimer une annonce, il suffit de cocher l'alerte ou les alertes à supprimer puis de cliquer sur le bouton Supprimer.
Conclusion
Profitez-en, tant que les sources sont disponibles car ce genre d'outils ne plait pas beaucoup à ce site ... ;-)
$ ./alertes.py --help
RépondreSupprimerTraceback (most recent call last):
File "./alertes.py", line 26, in
from apscheduler.scheduler import Scheduler
ImportError: No module named apscheduler.scheduler
Suite à l'install du script.
Kubuntu à jour.
Je ne fais pas de python. Une idée d'où ça vient ?
Il te manque le module Scheduler, sur ubuntu, essaie : sudo apt-get install python-apscheduler
Supprimerbonjour je suis guillaume dans le jura (sous kubuntu) .
RépondreSupprimerCette application ou logiciel me fascine en théorie ça devrais me faire gagner du temps mais je suis néophyte j'ai déjà copié des lignes de commandes dans la console mais je ne comprend pas forcement tout ce que je fais.
Pensez vous que ce soit accessible a mon niveau ou c'est plus simple pour moi de garder mes recherches types en marque page dans mon navigateur internet
Bonjour,
RépondreSupprimerla nouvelle interface de LBC peut elle etre la cause de mon échec (sous kubuntu 14.04, seule la source tierce minidom est manquante...mais malgré cela, je peux lancer, configurer, placer des alertes)
Merci
Bonjour
RépondreSupprimerJe viens de tester l'outil (très intéressant comme développement) sur mon PC (Ubuntu 16.04). L'installation s'est bien déroulée mais je n'arrive pas à faire d'ajout (je saisis tous les champs mais lorsque je clique sur ajout je reviens sur la page d'ajout et mon alerte n'est pas ajoutée). Avez vous déjà rencontré ce type d'erreur ?
PS: J'ai installé le module python-apscheduler au cas où mais cela n'a rien changé