Ce tutoriel vous montrera comment installer et utiliser rss2email sur Ubuntu. Rss2email est un programme open source qui peut envoyer une mise à jour du flux RSS à votre adresse e-mail. Le flux RSS est un excellent moyen de se tenir au courant des blogs et des sites Web, mais certains propriétaires de sites autorisent un certain nombre d'articles dans le flux RSS et d'autres fixent une limite de temps. Les lecteurs de flux RSS n'enregistrent pas les articles sur votre ordinateur, vous en manquerez donc de temps en temps. Ne serait-il pas agréable de pouvoir stocker tous les articles dans une boîte aux lettres afin de ne jamais manquer un article de blog ? C'est là qu'intervient rss2email. Je préfère également lire les articles de blog dans mon client de messagerie plutôt que de lire l'article sur un site Web.
Remarque :Ce tutoriel fonctionne sur toutes les versions actuelles d'Ubuntu, y compris Ubuntu 18.04, 20.04 et 20.10.
Installer et configurer rss2email sur Ubuntu
Rss2email se trouve dans le référentiel de logiciels Ubuntu par défaut, vous pouvez donc l'installer facilement en exécutant la commande suivante dans une fenêtre de terminal.
sudo apt install rss2email
Le binaire sera installé en tant que /usr/bin/r2e
. Une fois installé, vous devez créer une nouvelle base de données de flux avec la commande ci-dessous, qui définira une adresse e-mail par défaut à laquelle les e-mails sont envoyés. Il est recommandé d'utiliser une adresse e-mail dédiée pour vos flux RSS.
r2e new [email protected]
Ensuite, vous pouvez exporter vos abonnements aux flux RSS de votre lecteur de flux vers un fichier OPML et l'importer dans la base de données de flux r2e.
r2e opmlimport file.opml
Certains lecteurs de flux Web peuvent vous fournir un fichier XML. Vous pouvez également l'importer.
r2e opmlimport file.xml
Ensuite, vous pouvez répertorier vos flux avec :
r2e list
Pour ajouter un nouveau flux, exécutez
r2e add feedname http://feed.url/somewhere.rss
Si vous souhaitez envoyer le flux à une adresse e-mail différente de l'adresse e-mail par défaut, exécutez
r2e add feedname http://feed.url/somehwere.rss [email protected]
Vous pouvez maintenant modifier le fichier de configuration. J'utiliserai l'éditeur de texte en ligne de commande Nano.
nano ~/.config/rss2email.cfg
L'adresse d'expédition par défaut est [email protected]
, vous voudrez probablement changer cela.
from = [email protected]
Par défaut, rss2email utilisera l'adresse e-mail trouvée dans le flux comme adresse d'expédition lorsqu'il y a une adresse e-mail dans le flux. Cela provoque des e-mails renvoyés à l'adresse e-mail du flux, créant ainsi un problème de rétrodiffusion. Pour désactiver ce comportement, utilisez force-from = True
.
force-from = True
Ensuite, vous devez ajouter une adresse e-mail cible.
to = [email protected]
Si vous souhaitez recevoir des e-mails au format HTML, remplacez les valeurs suivantes par True
.
html-mail = False use-css = False
Enregistrez et fermez ce fichier. Pour enregistrer un fichier dans l'éditeur de texte Nano, appuyez sur Ctrl+O
, puis appuyez sur Entrée pour confirmer. Pour fermer le fichier, appuyez sur Ctrl+X
.
Configurer SMTP
Ensuite, nous devons configurer la manière dont rss2email envoie les e-mails. Par défaut, r2e utilise sendmail
binaire pour envoyer un e-mail s'il existe sur le système. Si vous avez installé rss2email sur votre serveur de messagerie Postfix, vous pouvez ignorer cette partie. Si vous avez installé rss2email sur votre ordinateur local, vous pouvez utiliser SMTP pour envoyer des e-mails. Bien que rss2email vous permette de configurer SMTP dans ~/.config/rss2mail.cfg
fichier, l'implémentation est assez boguée en fait.
Au lieu de cela, nous pouvons utiliser sSMTP pour configurer SMTP. sSMTP est un serveur SMTP très simple. Tout d'abord, installez ssmtp
sur Ubuntu.
sudo apt install ssmtp
Ouvrez ensuite le fichier de configuration.
sudo nano /etc/ssmtp/ssmtp.conf
Modifiez le fichier comme ci-dessous.
root=[email protected] mailhub=smtp.gmail.com:587 AuthUser=[email protected] AuthPass=YourGmailPassword UseTLS=YES UseSTARTTLS=YES
Notez que si vous avez activé la vérification en deux étapes pour votre compte Gmail, vous devrez utiliser un mot de passe d'application au lieu du mot de passe normal.
J'utilise le serveur SMTP Gmail pour r2e pour envoyer des e-mails dans cet exemple. Vous pouvez également utiliser d'autres services de messagerie.
Enregistrez et fermez le fichier. Vous pouvez maintenant exécuter la commande suivante pour tester les configurations SMTP.
echo "hello" | sendmail [email protected]
Si les configurations SMTP sont correctes, vous recevrez un e-mail de votre compte Gmail.
Si vous voyez cette erreur suivante lors de l'exécution de la commande ci-dessus.
sendmail: Server didn't like our AUTH LOGIN (535 5.7.8 Error: authentication failed: Invalid authentication mechanism)
C'est parce que votre serveur SMTP ne prend pas en charge le mécanisme d'authentification LOGIN.
Utiliser Postfix pour relayer les e-mails
Postfix est un serveur SMTP complet et très populaire. Vous pouvez utiliser Postfix pour relayer les e-mails via Gmail au lieu d'utiliser sSMTP. Si vous avez déjà installé sSMTP, supprimez-le.
sudo apt purge ssmtp
Ensuite, installez Postfix sur Ubuntu.
sudo apt install postfix
Lorsque vous voyez le message suivant, appuyez sur la touche Tab et appuyez sur Entrée.
Choisissez ensuite la troisième option :Internet with smarthost
, car nous souhaitons que Postfix envoie des e-mails via un autre serveur SMTP tel que Gmail.
Ensuite, définissez le nom de messagerie du système. J'utilise simplement la valeur par défaut car cela n'a pas d'importance.
Enfin, entrez l'adresse du serveur SMTP. Si vous utilisez Gmail, saisissez smtp.gmail.com:587
.
Une fois Postfix installé, ouvrez le fichier de configuration.
sudo nano /etc/postfix/main.cf
Ajoutez les lignes suivantes à la fin de ce fichier.
# outbound relay configurations smtp_sasl_auth_enable = yes smtp_sasl_password_maps = static:[email protected]:YourPassword smtp_sasl_security_options = noanonymous smtp_tls_security_level = may header_size_limit = 4096000
Enregistrez et fermez le fichier. Redémarrez ensuite Postfix pour que les modifications prennent effet.
sudo systemctl restart postfix
Vous pouvez maintenant exécuter la commande suivante pour tester les configurations SMTP.
echo "hello" | sendmail [email protected]
Si les configurations SMTP sont correctes, vous recevrez un e-mail de votre compte Gmail.
Flux RSS d'interrogation
Une fois SMTP configuré, vous pouvez interroger tous vos flux en exécutant les commandes suivantes.
r2e run --no-send
Cette commande n'est exécutée qu'une seule fois car rss2email interrogera tous les articles de la base de données de flux. Vous ne souhaitez probablement pas recevoir les articles que vous avez déjà lus, d'où le --no-send
option. Si vous avez beaucoup de flux dans la base de données, ce processus peut prendre un certain temps. Une fois cette commande terminée, vous devez exécuter la commande suivante pour recevoir de nouveaux articles de vos flux RSS.
r2e run
Créer une tâche Cron
Au lieu d'exécuter manuellement r2e run
à chaque fois, vous pouvez utiliser Cron pour automatiser cette tâche. Ouvrez votre fichier crontab.
crontab -e
Insérez la ligne suivante dans ce fichier.
*/20 * * * * /usr/bin/r2e run > /dev/null 2>&1
Cela exécutera r2e
toutes les 20 minutes. Pour exécuter r2e
toutes les 30 minutes, changez simplement de 20 à 30.
*/30 * * * * /usr/bin/r2e run > /dev/null 2>&1
Enregistrez et fermez le fichier.
Plus d'utilisation
Pour exporter les flux RSS de la base de données, exécutez
r2e opmlexport > file.opml
Pour suspendre temporairement un flux, exécutez
r2e pause feed-index
Pour réactiver une exécution de flux
r2e unpause feed-index
Pour obtenir le numéro d'index du flux, exécutez
r2e list
Par exemple, pour mettre en pause le flux de pause #10, exécutez
r2e pause 10
Comment trouver l'URL du flux d'un site Web dans Firefox
Google Chrome a cessé de prendre en charge les flux RSS il y a longtemps. Certains sites ne montrent pas l'URL de leur flux RSS aux visiteurs. Vous pouvez appuyer sur Ctrl + I
dans Firefox pour les trouver.
Dépannage
Si rss2email ne fonctionne pas correctement, vous pouvez utiliser l'indicateur -VVV pour afficher les informations de débogage.
r2e -VVV run
Par exemple, r2e m'affiche le message d'erreur suivant.
2021-07-04 10:40:25,973 [ERROR] error while running time limited function: generator raised StopIteration 2021-07-04 10:40:25,973 [ERROR] cause: generator raised StopIteration
Il s'avère que cette erreur ne se produit que lorsqu'il récupère des flux RSS à partir d'une URL FeedBurner.
J'espère que ce tutoriel vous a aidé à installer et à utiliser rss2email sur Ubuntu. Prenez soin de vous.