Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 01/10/2017, à 16:37

dut

Envoi automatisé de copies de pages web

Je souhaite prendre des copies de trois pages internet complétes (toujours les même) chaque semaine, et envoyer dans la foulée ces images en pièce jointe de mail vers une liste d'adresses pré-établie.

Je sais procéder de façon manuelle, il faut que ces envois soient complètement automatisés

Merci d'avance de vos pistes.

Hors ligne

#2 Le 01/10/2017, à 18:23

Watael

Re : Envoi automatisé de copies de pages web

BONJOUR !

qu'appelles-tu "prendre des copies" de pages web ?


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#3 Le 02/10/2017, à 06:55

dut

Re : Envoi automatisé de copies de pages web

Je pense à une capture de page sous forme d'image, un peu comme une capture d'écran, mais qui couvre l'étendue compléte de la page web..

Hors ligne

#4 Le 02/10/2017, à 08:37

moko138

Re : Envoi automatisé de copies de pages web

ht tps://protuts.net/capture-ecran-page-web-complete-firefox-sans-extension/ :

Besoin de faire une capture d’écran d’une page web dans sa globalité ? Le tout en un clic ? Sans aucune extension ? Alors lisez la suite de l’article !
Pour ce faire, faites un clic-droit dans la page web que vous souhaitez capturer, puis "Examiner l’élément".

Dans le coin supérieur droit, cliquez sur l’icône en forme de roue "Options des outils"

Tout en bas de la liste des options, cochez la case "Prendre une capture d’écran de la page entière".

L’activation de cette option fait aussitôt apparaitre une icône en forme d’appareil photo dans la barre d’outils Examiner l’élément.

Il ne vous reste plus qu’à cliquer dessus pour enregistrer une capture d’écran de la page entière.

Astuce n°1 : agrandissez ou réduisez la largeur de votre fenêtre pour plus ou moins « rogner » la partie visible.
Astuce n°2 : pour obtenir de meilleurs résultats, détachez les outils de développements en cliquant sur l’icône située juste à droite de la croix.


%NOINDEX%
Un utilitaire précieux : ncdu
Photo, mini-tutoriel :  À la découverte de dcraw

Hors ligne

#5 Le 02/10/2017, à 08:50

nam1962

Re : Envoi automatisé de copies de pages web

Je suis le fil !
Ca peut se faire avec une tâche cron et  wkhtmltopdf ou wkhtmltoimage, mais je rame avec cron et n'ai pas encore réussi à maîtriser les subtilités de wkhtmlmachin
(exemple de tuto)
Et bien sûr mailutils ou mutt : https://www.tecmint.com/send-email-atta … mmandline/

Ps : tu devrais demander aux modos de passer ton topic en section "script" !

[Edit] ça peut se faire en python aussi : https://stackoverflow.com/questions/233 … ing-python

Dernière modification par nam1962 (Le 02/10/2017, à 15:47)


[ Modéré ]

Hors ligne

#6 Le 03/10/2017, à 22:24

nam1962

Re : Envoi automatisé de copies de pages web

Bon, j'ai un peu regardé et installé les outils des dépôts qui vont bien :

sudo apt install xvfb
sudo apt install wkhtmltopdf

qui permet de :

xvfb-run wkhtmltopdf l'url/que/je/veux ~/Documents/lenomdemon.pdf

exemple :

xvfb-run wkhtmltopdf [color=red][b][modéré : pas d’auto-pub, merci][/b][/color]-simplement-polices-linux/ ~/Documents/installerpoliceslinux.pdf

(on peut tester cette commande et voir si le pdf a été créé dans le répertoire Documents)

Pour envoyer les mails deux outils également :

sudo apt install mailutils

La touche [Tab] pour sélectionner : "pas de configuration"
Puis

sudo apt install ssmtp

Puis éditer deux fichiers :

gksudo gedit /etc/ssmtp/ssmtp.conf

Mettre dedans :

#
# /etc/ssmtp.conf -- a config file for sSMTP sendmail.
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=monadresseemetteur@mondomaine.truc
AuthUser=monadresseemetteur@mondomaine.truc
AuthPass=monmotdepasse

# The place where the mail goes. The actual machine name is required
# no MX records are consulted. Commonly mailhosts are named mail.domain.com
# The example will fit if you are in domain.com and you mailhub is so named.
mailhub=monserveursmtp:465
UseTLS=YES

# Where will the mail seem to come from?
# rewriteDomain=y
# The full hostname
# hostname=localhost.localdomain
rewriteDomain=mondomaine
hostname=prefixedomaine
FromLineOverride=YES

(465 peut-être remplacé par 587 si Gmail ou autre truc bizarre - UseTLS=YES peut être remplacé par UseSSLTLS=YES si besoin)


Puis

gksudo gedit /etc/ssmtp/revaliases

Mettre dedans :

# sSMTP aliases
# 
# Format:	local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:monadresseemetteur@mondomaine.truc:monserveursmtp:465
user:monadresseemetteur@mondomaine.truc:monserveursmtp:465

(465 peut-être remplacé par 587 si on veut émettre de Gmail ou autre truc bizarre)

Puis créer un script (à nommer, par exemple mailjeudi.sh):

#!/bin/bash

xvfb-run wkhtmltopdf l'url/que/je/veux ~/Documents/lenomdemon.pdf

echo -e "Voilà le message tant attendu\nBien à toi\nAlfred" | mailx -s "Le mail du jeudi" -a ~/Documents/lenomdemon.pdf adressedemondestinataire@sondomaine.com

Jusque là ça doit fonctionner. (ça crée le pdf et envoie le mail chez moi)

Maintenant, plutôt que cron, j'ai voulu utiliser systemd timer :

J'ai créé un /etc/systemd/system/jeudi.timer :

[Unit]
Description= test jeudi

[Timer]
OnUnitActiveSec=10s
OnBootSec=10s

[Install]
WantedBy=timers.target

(le timer sera bien sûr à amender pour l'envoyer chaque jeudi)

Et un /etc/systemd/system/jeudi.service :

[Unit]
Description=test jeudi

[Service]
Type=oneshot
ExecStart=/home/monlogin/Desktop/mailjeudi.sh

[Install]
 WantedBy=weekly-backup.target

Puis bien sûr :

systemctl start jeudi.timer

Mais là, ça plante ! ni wkhtmltopdf, ni mailx ne passent !

Une vérif avec :

journalctl  -xe

me le confirment...

Est-ce une coquetterie de systemd, cron ferait il mieux , comment paramétrer cron ?

Dernière modification par nam1962 (Le 04/10/2017, à 09:26)


[ Modéré ]

Hors ligne