blount / cheky Goto Github PK
View Code? Open in Web Editor NEWAlerte mail et RSS pour Leboncoin.fr
License: GNU General Public License v3.0
Alerte mail et RSS pour Leboncoin.fr
License: GNU General Public License v3.0
Bonjour,
depuis quelques jours, je reçois des emails indiquant des offres dont le nom n'est plus renseigné.
Ce dernier contient le lien vers l'annonce sur leboncoin, il est donc difficile d'accéder rapidement à l'annonce sans cette donnée...
ci-dessous un exemple de contenu de mail reçu :
Alerte générée le 03/04/2015 14:20
Lien de recherche: http://www.leboncoin.fr/annonces/offres/bretagne/occasions/?f=a&sp=0&th=1&q=NF310&it=1
Liste des nouvelles annonces :
Publié le 2015/03/31 11:42
Nom : Prix : 140 €
Catégorie : Informatique
Département : Val-de-Marne Ville : Thiais
Annonce de particulier.
Avec la photo c'est plus parlant :
Pour infos, voici code HTML (espaces compris) du titre de l'annonce sur la page leboncoin (cf. lien ci-dessus) :
<h2 class="title">
Netbook samsung np-nf310 shark (nf310)+sacoche
</h2>
Je suis une quiche en Php mais le /Lbc/Parser semble bien échapper les espaces :
} elseif ($class == "title") {
$ad->setTitle(trim($node->nodeValue));
}
Serai-je le seul à avoir ce problème?
Débat ouvert sur l'abandon du stockage par fichier :
https://alerte.ilatumi.org/forum/viewtopic.php?id=519
bonjour,
je pense que tout est dans le titre :
"ajouter les coordonner mail/telephone lors de la sauvegarde d'une annonce."
effectivement c'est une donnée très importante qui est manquante.
je ne sais pas si techniquement c'est difficile à faire et que c'est pour ca qu'il ne le fait pas.
merci bien.
J'ai défini une recherche lbc assez simple :
http://www.leboncoin.fr/annonces/offres/ile_de_france/occasions/?f=a&th=1&q=loro+piana&it=1
qui, de façon intermittente, donne l'impression d'avoir pété un câble
ce jour elle renvoie toutes les annonces -MAISON- en Bourgogne qui ont "ancien" dans leur titre
voir fichier joint
Je ne sais pas si le souci vient du LBC Alert, ou est un bug (ou une contre-mesure....)
émanant du Boncoin ?
Aurais tu une idée ?
Je propose de modifier le code source en cas d'echec SMTP pour ne pas perdre d'alerte ainsi qu'un lien pour l'affichage mobile
Je laisse bien sur au createur d'approuver ou non, ou meme d'ameliorer !
Je viens de mettre à jour lbcalert sur mon serveur (3.1 -> 3.2), et il y a un problème avec les flux.
Voici la page en question :
https://framabin.org/?2d13bbcf3fffec29#FxSoECljFE5fofc31FIJ4Ob+GQmg6qU+qkJwF/L1D30=
Et voici ce que me dit Leed à son propos :
This XML document is invalid, likely due to invalid characters. XML error: Invalid document end at line 2, column 1.
Edit: Je ne sais pas si le problème vient d'lbcalert ou de leed, en fait, que j'ai également mis à jour en même temps, car en voulant repartir sur la 3.1, le problème persiste en utilisant toujours la même version de Leed (1.6.1).
Bonjour,
J'ai du mal à comprendre la différence avec le système d'alerte intégré aux comptes sur le bon coin. Celui si marche aussi pour se loger mais sinon ?
Hello!
J'adore les alertes Leboncoin!
Je viens de mettre la 2.1, j'ai importé les paramètres de l'ancien système, je reçois bien les alertes par mail.
Par contre, la page /?mod=mail est vide!?! blacnhe...
Je ne peux donc pas ajouter d'alerte mail.
Celle ci c'est OK: /?mod=rss
It would be nice to send results via slack incoming webhooks.
Implementation seems quite simple :
https://api.slack.com/incoming-webhooks
Enlever le trie par prix avant la récupération des annonces.
Bonjour,
J'ai remarqué que lorsque dans les paramètres avancés (pour les alertes mail), on coche une catégorie, on risque de ne recevoir aucune alerte.
Le pb se situe dans le parser ligne 128:
if ($filters["categories"] && !in_array($ad->getCategory(), $filters["categories"])) {
continue;
}
$ad->getCategory() est souvent vide (j'ai trouvé peu d'exemples d'url LBC qui fournit un div contenant la catégorie), du coup si on a coché une catégorie, le résultat du test est true, l'annonce n'est donc pas retenue. Il faudrait remplacer par:
if ($ad->getCategory() != '' && $filters["categories"] && !in_array($ad->getCategory(), $filters["categories"])) {
continue;
}
++
Après avoir fait la MAJ récemment, j'ai eu 3 fois en 24H une même notice :
[01-Jun-2016 20:53:33 Europe/Paris] PHP Notice: Array to string conversion in /home/xxxx/app/models/Storage/File/Alert.php on line 121
C'est peut-être un problème réseau, j'utilise TOR, et la notice n'a pop que 3 fois.
Merci pour votre travail.
Appli installée operationnelle avec reception alerte sms free.
Je desire recevoir les emails et de preference avec la fonctions sendmail de mon serveur.
Je ne remplis donc pas les champs serveur smtp , port... et effectue un test par l'interface d'administration sur la page config email. Tous les champs vides, le test est ok et je recois bien l'email de test. L'email est bien envoyé avec la commande sendmail, je le vois passer dans les logs emails du serveur.
Par contre, a l'execution du cron, je recois bien les alertes sms free mais pas l'email. Les logs indiquent: "WARN Échec de la connexion SMTP. "
Le message interpelle puisqu'il ne devrait pas y avoir de connexion directe smtp. En fait , on devrait avoir le meme comportement que dans la foncton test smtp.
Bref , je ne peux pas envoyer par la commande sendmail les alertes. Dommage car ca a certain avantages et permet une install plus "plug and play".
A noter que si je remplis un serveur smtp, ca fonctionne bien. Je pinaille donc...
Voici l'erreur complète qui est remontée par la crontab :
PHP Fatal error: Call to undefined method Lbc\Item::getCountry() in /var/www/LBCAlerte/app/mail/scripts/check.php on line 295
la solution est tres simple il suffit de remplacer dans lib/Lbc/Parser.php:
if ($filters["cities"] && !in_array($ad->getCounty(), $filters["cities"])) {
par:
if ($filters["cities"] && !in_array($ad->getCity(), $filters["cities"]) && !in_array($ad->getCounty(), $filters["cities"])) {
et sans doute de remplacer "ville" par "ville/departement" dans le formulaire d edition des alertes.
merci
Il faut mettre à jour PHPMailer pour corriger une faille critique permettant l'exécution de code à distance. Voir l'annonce sur Github de PHPMailer.
Voir aussi : Rapport original.
When using Slack, the links are like mobile.leboncoin.fr/...
But on my iPhone, using the link in the LBCAlerte emails, I can open the app directly thanks to deep linking. This is not possible with mobile URLs.
Maybe a check box would be enough in the parameters?
Alors que qu'un e-mail de test part bien.
Une question de droit sur le SMPT du Syno peut être ?
Bonjour,
Je viens d'installer LBCAlert. J'essaye de générer un flux RSS à partir d'une recherche extrènement simple (pas de mot-clef, ou clio par exemple), mais le flux est toujours vide.
Je précise aussi que je n'ai rien coché comme catégorie, pas saisi de prix ni de ville, etc. Uniquement le champ Adresse leboncoin avec, par exemple :
http://www.leboncoin.fr/annonces/offres/ile_de_france/occasions/?f=a&th=1&q=audi+a4
bonjour,
tout d'abord super produit merci !
par contre il est pas evident de comprendre que les feu vert sont des switch
donc on met un prix ou n mail bidon pour desactiver une alerte que l'on veut garder sous le coude. Ce qui n'est pas ideal
voici un exemple de switch basique : http://www.w3schools.com/howto/howto_css_switch.asp
bonne continuation
Bonjour
J'ai bascule en version 3.2 et impossible de recevoir les alertes. La fonction mail est ok et pas d'erreur quand je fais un check.pho en manuel. Tout etait ok en version 3.1
2016-05-10T16:36:03+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:36:03+02:00 INFO [Pid 1586122] USER : admin (/home/david.miravete/www/var/configs/admin.csv)
2016-05-10T16:40:04+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:44:03+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:48:03+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:52:03+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:56:03+02:00 INFO [Pid 1586122] Vérification des alertes.
2016-05-10T16:56:04+02:00 INFO [Pid 1586122] USER : admin (/home/david.miravete/www/var/configs/admin.csv)
2016-05-10T17:00:08+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:04:03+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:08:03+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:12:03+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:14:47+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:15:46+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:16:03+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:20:04+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:24:03+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:24:13+02:00 INFO Un processus est en cours d'exécution.
2016-05-10T17:25:59+02:00 INFO Un processus est en cours d'exécution.
D'ou vient ce probleme?
Bonjour,
Ça se joue sur un NAS Synology où tournent tranquillement plusieurs petit
sites et ou la précédente version de BLC Alertes mails aussi.
A l’installation de la 2.3, tout se passe bien,
la page de création de flux RSS se passe aussi bien
sauf que la page des alertes e-mail reste vide...
idem pour la page d'administration
Bien entendu le chmod a été effectué.
Qui aurait une idée de génie ?
Bonjour.
Je vient de metre a jour en versin 2.6.2.
et des que je veut ajouter une nouvelle recherche mon fichier csv est ecrase ( 0 octets).
si vous avez besoins d'autre infos pour aider un peu plus, demandez mois.
It would be nice to define the base URL where LBCAlerte is running, so that, if it's behind reverse proxy, it can be accessed when clicking on the links in the e-mails (change, save, etc...)
Thanks for this great tool !
J'ai fait un update, et le ficher version est bien passé en 3.x mais l'interface est restée en 2.9.1
Une idée?
Sébastien
Server runs Yunohost with LBCAlerte version 3.3 : https://github.com/YunoHost-Apps/LBCAlerte_ynh
My smtp password has a pattern which is leading to the message "Un problème est survenu lors de l'exécution du programme."
Admininistration > MAIL
hello"/'there
(my password has this pattern)Logs
tail var/log/error.log
2017-06-03T20:07:31+02:00 ERROR Config_Lite_Exception_UnexpectedValue : #0 key not found, no default value given. (/var/www/LBCAlerte/lib/Config/Lite.php:364)
var/config.ini
smtp[password] = ""
If using the password hello"there
, this is no error and I get a white blanck screen. And all the admin area does not run anymore.
I don't see any advantage of using an URL shortener in SMS notifications: would you add an config parameter to disable it?
Bonjour,
tout d'abord un grand merci pour ton appli c'est vraiment super pratique.
Par contre je rencontre le bug du fichier .lock (Processus en cours d'utilisation), du coup supprimer à chaque fois le fichier à la main ça devient pénible (tous les jours environ)
Côté environnement je suis sur un NAS Synology, 4 alertes dont une sur SeLoger avec pas mal de résultats remontés.
Cron + alertes toutes les 30 min
Hébergement fichiers (j'ai pas retrouvé mon mdp sql à l'installation ^^)
Je me pose la question si ça ne serait pas la 'grosse' requête Seloger qui foutrait la merde.
Je vais essayer de la "découper" en plusieurs en attendant d'avoir ton avis sur la question.
Merci encore
Je viens de passer en 2.9.1, avec une AlerteLBC vierge,
les paramètres d'e-mail sont bons, ca bloque toujours...
Aucune idée sur ce qui se passe ?
Merci d'avance.
Bonjour,
Avant tout bravo ! Je me suis installé ca pour des recherches perso ca tourne super !
Je me demandais si vous aviez au programme le support d'autres sites comme seloger logicimmo ou d'autres marketplaces type ebay ou amazon.
Merci encore
Bonjour,
Depuis ce matin, les images ne s'affichent plus dans les mails d'alertes, et le lien html ne fonctionne plus non plus.
A priori, il semble qu'il manche http devant les liens
<a href="//www.leboncoin.fr/bricolage/832385950.htm?ca=13_s"
"img src="//img4.leboncoin.fr/images/2d6/2d66fb81dbe310b0e29423a4268949ad428705ea.jpg"
Patrice
Hello.
Runing check.php gives error :
PHP Warning: Module 'xsl' already loaded in Unknown on line 0
PHP Warning: Module 'zip' already loaded in Unknown on line 0
Those modules are already loaded by default on my webhost...
J'ai l'erreur suivante en testant une webhook sur slack en http ou https:
Le test d'envoi a échoué :
Erreur lors de l'envoi de la notification : (0) cURL Error: Protocol http not supported or disabled in libcurl
install clean qui date d'aujourd'hui en utilisant le système de fichier (pas MySQL)
Bonjour,
Ça serait super de pouvoir associer une adresse e-mail par défaut pour chaque utilisateur pour éviter d'avoir à la taper à chaque fois.
J'ai tout re-installe from scratch (pas de copie de mon acien admin.csv) et j'ai teste avec une nouvelle alerte, j'ai bien un WARN dans les log:
2014-01-23T12:50:49+01:00 INFO Démon démarré
2014-01-23T12:50:49+01:00 INFO Contrôle des alertes.
2014-01-23T12:50:50+01:00 INFO Fichier config: /volume1/web/LBCAlerte-dev/var/configs/admin.csv
2014-01-23T12:50:50+01:00 INFO 1 alerte trouvée
2014-01-23T12:50:50+01:00 INFO Contrôle de l'alerte http://www.leboncoin.fr/annonces/offres/ile_de_france/?f=a&th=1&q=C4+picasso
2014-01-23T12:50:53+01:00 INFO 35 annonces trouvées
2014-01-23T12:50:54+01:00 WARN Impossible d'instancier la fonction mail.
green
Links to leboncoin.fr/seloger.com websites from the LBCAlerte interface can reveal the LBCAlerte instance's URL via the referrer. Which they could use to find the instance's IP and eventually block it.
I suggest to take measures to protect our instances from this "possible" lockdown.
One simple option that works on modern browsers, it to prevent the Referer
HTTP header to be added to the HTTP request.
It is done be setting the referrer-policy to same-origin
via any of the following method:
Referrer-Policy
HTTP header<meta> element
rel="noreferrer"
on <a>
elements that points to theses websites.Impossible de faire fonctionner lbc depuis hier apres midi... WARN Code HTTP différent de 200
Réinstallation complet de l'outil : idem
il semblerait que ça soit lié au https du site leboncoin.
Help
Le mot de passe admin reste en permanence sur la page index.php ce qui pose des probleme de sécurité
Sur synology, le cron est forcement lancé sous le user "root". Lorque check.php est lancé, à la fin on appelle la fonction save(Alert $alert) (dans app/models/mail/storage.php). Cette fonction crée un nouveau fichier xxx.csv.new qui recoit les alertes updatées et ce fichier ecrase ensuite le xxx.csv original. Ceci implique que le nouveau fichier appartient désormais au user root et non plus au user nobody ; et donc la page des alertes n'est plus accessible...
Y a-t-il une raison spécifique à ce codage ? J'ai modifié la fonction comme suit et tout fonctionne :
$alerts = $this->fetchAll();
$fopen = fopen($this->_filename, "w"); #"a" devient "w"
flock($fopen, LOCK_EX);
#$fpNewFile = fopen($this->_filename.".new", "w"); #on ne crée pas le nouveau fichier
#flock($fpNewFile, LOCK_EX);
fputcsv($fopen, $this->_header, ",", '"');
$updated = false;
foreach ($alerts AS $a) {
if ($a->id == $alert->id) {
$a = $alert;
$updated = true;
}
fputcsv($fopen, $a->toArray(), ",", '"'); #on ecrit directement dans le cvs
}
if (!$updated && !$alert->id) {
$alert->id = sha1(uniqid());
fputcsv($fopen, $alert->toArray(), ",", '"'); #idem
}
#fclose($fpNewFile); #pas besoin de fermer puisqu'on ne l'a pas créé
fclose($fopen);
#rename($this->_filename.".new", $this->_filename); #pas besoin de renommer
Qu'en pensez-vous ?
Neo
hello and thanks for writing cheky,
saving an ad works, except images are not saved. making <cheky>/static/media/annonce
writeable by the server seems to help, since a folder <username>
then gets created there, but images are still not there.
Hello, en guise de nouvelle fonctionnalité je verrais bien (dans la partie de gestion des utilisateur) un cham de type "number" qui permet de limiter pour un user le nombre d'alerte possible.
Est-ce une bonne suggestion ?
Personnellement je n'aime pas trop les grandes photos dans les mails d'alerte.
J'ai fait des modifs dans les fichiers suivants :
de manière à obtenir le look suivant :
Si ça intéresse qq'un, je peux envoyer le code (dites moi juste comment, pas très familier de github...).
Après, il est surement possible d'offrir le choix à l'utilisateur, mais ça doit représenter pas mal de code. C'est juste une suggestion.
Je ne sais pas trop pourquoi, mais un problème de droit d'écriture est apparu, et la config est devenue corrompue.
php_errors.log :
[15-Jan-2017 18:41:14 Europe/Paris] PHP Warning: fopen(/home/lbcalert/var/log/info.log): failed to open stream: Permission denied in /home/lbcalert/lib/Log4php/appenders/LoggerAppenderFile.php on line 99
[15-Jan-2017 18:41:14 Europe/Paris] PHP Warning: log4php: [LoggerAppenderRollingFile:default]: Failed opening target file. Closing appender. in /home/lbcalert/lib/Log4php/LoggerAppender.php on line 283
Dans error.log de l'appli :
2017-01-16T13:38:19+01:00 ERROR Config_Lite_Exception_UnexpectedValue : #0 key not found, no default value given. (/home/lbcalert/lib/Config/Lite.php:364)
Le fichier config.ini ne contenait plus que [general] et baseurl à l'intérieur.
Message d'erreur en affichant l'url de l'appli, il m'a suffit de supprimer le fichier config.ini et de refaire la setup pour que accéder à nouveau à l'appli.
Le support des notifications push avec NotityMyAndroid et/ou Pushover serait bien venu en plus de Pushbullet :-)
Bonjour,
Il pourrait être intéressant de retourner l'ensemble des pages de résultats de la recherche dans le flux RSS, et pas seulement la première.
Ainsi on a directement toutes les annonces existantes lorsque l'on crée une nouvelle recherche - et on peut se permettre de laisser son news aggregator fermé pendant 2 mois sans perdre une annonce.
Est-ce une demande réalisable techniquement ?
Je peux éventuellement m'y coller si vous pensez que c'est jouable.
J'ai à nouveau le même problème, sauf que cette fois ci je suis repartis depuis 0.
Hier j'avais "importé" le CSV.
Voici ce que j'ai fais.
J'ai DL le zip de dev, je l'ai mis en place (777 sur var), j'ai créé 4 alertes, j'ai lancé php -f /var/www/LBCAlerte/check.php
J'ai bien reçu les alertes, puis ensuite je suis retourné dans l'interface pour ajouter d'autres alertes, mais malheureusement quand je clique sur MAIL je me retrouve encore devant la page blanche à présent.... exactement comme hier.
Actuellement, l'option curl CURLOPT_FOLLOWLOCATION
est utilisé ce qui, sur les system où open_basedir est actif cause le message d'erreur suivant :
PHP Warning: curl_setopt(): CURLOPT_FOLLOWLOCATION cannot be activated when an open_basedir is set in .../lbcalerte/lib/Http/Client/Curl.php on line 15
Il est possible de ne pas utiliser CURLOPT_FOLLOWLOCATION
en parsant la réponse 301 ou 302 à la recherche du Header "Location" (cf. divers exemples sur StackOverflow).
this is a security concern. all files in var/
can be accessed remotely without authentication:
$ wget -qO- https://myhost/mychekyinstall/var/users.db | wc -l
2
Slt, J'ai un compte premium Notify My Android, j'ai bien rentré la clé. Mais le message test ne fonctionne pas et aucune synchro.
Une idée?
Merci d'avance
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.