Dans cette partie (qui sera plutôt courte), on cherche à s'exercer sur l'utilisation de la commande curl.
yagmur@LAPTOP-7LSSEII1:~/PROJET-MOT-SUR-LE-WEB$ curl http://www.lemonde.fr -w %{http_code}
301
HTTP STATUS CODES:
1xx informational response - the resquest was received, continuing process
2xx successful - the request was successfully received, understood and accepted
3xx redirection - further action needs to be taken in order to complete the request
4xx client error - the request contains bad syntax or cannot be fulfilled
5xx server error - the server failed to fulfil an apparently valid request
Pour mieux vérifier, on procède donc de la façon suivante :
retourcurl=$(curl http://www.lemonde.fr -w %{http_code})
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
Pas de grand résultat, ça ne marche pas, surement dû à la qualité de l'URL. On va essayer d'en trouver un plus sympa. On recommence donc encore :
retourcurl=$(curl https://www.lemonde.fr -w %{http_code})
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 296k 0 296k 0 0 1265k 0 --:--:-- --:--:-- --:--:-- 1265k
L'url est un lien sécurisée.
Pour de meilleur résultat, on peut désormais utiliser la commande suivante :
echo $retourcurl
....</script> </body> </html> 200
Petit problème... il y a beaucoup trop de texte et il est donc difficile de trouver cette information à la fin.
On peut donc nettoyer de cette façon là :
retourcurl=$(curl -o toto.txt https://www.lemonde.fr -w %{http_code})
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 296k 0 296k 0 0 1519k 0 --:--:-- --:--:-- --:--:-- 1519k
yagmur@LAPTOP-7LSSEII1:~/PROJET-MOT-SUR-LE-WEB$ echo $retourcurl
200
Nous voulons que l'encodage soit en UTF-8. Pour vérifier cela :
yagmur@LAPTOP-7LSSEII1:~/PROJET-MOT-SUR-LE-WEB $ curl -I https://www.lemonde.fr
HTTP/2 200
content-type: text/html; charset=UTF-8
x-protected-by: Sqreen
set-cookie: critical-home-free-desktop=8a3a8b2ed6e2bb76a37f5b3f3ae30c30; expires=Tue, 05-Jan-2021 13:00:44 GMT; Max-Age=2592000; path=/; secure
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
via: 1.1 google, 1.1 varnish
cache-control: private, max-age=0
accept-ranges: bytes
date: Sun, 06 Dec 2020 13:00:44 GMT
x-served-by: cache-cdg20748-CDG
x-cache: MISS
x-cache-hits: 0
x-timer: S1607259645.583316,VS0,VE65
vary: Accept-Encoding
strict-transport-security: max-age=31557600
curl -I https://www.lemonde.fr | egrep "charset"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
content-type: text/html; charset=UTF-8
On accompagne tout cela, d'un petit coup de nettoyage curl :
curl -I https://www.lemonde.fr | egrep "charset" | cut -f2 -d=
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
UTF-8
Pour utiliser ce code plus facilement, on peur le stocker dans une variable!
encodageURL=$(curl -I https://www.lemonde.fr | egrep "charset" | cut -f2 -d=)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
echo $encodageURL nous donne donc un retour.
UTF-8
On va chercher à générer un tableau par la démarche qui va suivre :
On exécute donc le script vu ensemble en cours. On a donc comme résultat :
yagmur@LAPTOP-7LSSEII1:~/PROJET-MOT-SUR-LE-WEB$ bash ./PROGRAMMES/scritp_2020-11-18.sh ./URLS/ ./TABLEAUX/tableau.html "french kiss"
Commentaires
Enregistrer un commentaire