Journal Naviguer sans tête dans un coquillage !
Naviguer headless consiste à surfer sur la toile d'araignée sans gui. Dans ce journal, on ne s'intéressera pas à des outils tels que Selenium WebDriver (https://www.selenium.dev/) qui permet à partir de différents langages d'interagir avec les navigateurs les plus courants, ou Weboob (WEB Outside Of Browsers, http://weboob.org/) qui permet de se connecter à différents sites depuis Python, mais plutôt à quelques outils accessibles depuis le shell : curl, Wget, Lynx, Chromium et Firefox. On abordera en particulier (…)
« Internet est cassé » ou plutôt : comment tester du TCP ou de l’UDP
N. D. L. A. : cet article est généré via une commande du type ansible-playbook InternetEstCassé.yml pour tester réellement les commandes.
Internet est cassé. Le Web ne marche plus. Le réseau est pété. Ça marche pas. Ce site est indisponible. Des lutins bloquent ma connexion. Les tuyaux sont bouchés. Y a Firefox qui veut pas, etc. Quand il y a un souci de réseau, toutes sortes d’imprécations, de suppositions, de supplications ou de raisons sont lancées. Peut‐on aller plus loin et essayer d’y voir plus clair, de déboguer un peu le souci et d’identifier le problème.
On va parler un peu d'IP — surtout la version 4 —, de TCP, d’UDP, d’ICMP, d’ARP, de DNS, de HTTP, etc., d’un peu de vue pratique de vérification du bon fonctionnement ou de recherche d’un souci. En dehors des pages Wikipédia, une lecture utile : la RFC 1180 « A TCP/IP Tutorial » (avec une traduction en français disponible).
Journal Récupérer une liste de lecture Apple
Je suis récemment allé à une soirée où le choix musical m'a plu. La personne qui mettait sa musique a découvert qu'elle pouvait me partager sa liste en m'envoyant un lien qui pointe vers https://music.apple.com/fr/playlist/[quelque chose]
.
Je n'ai pas iTunes. Mon but : récupérer cette liste et en faire un truc que je peux utiliser. Ce journal est aussi un prétexte pour jouer avec jq, un outil pour faire des requêtes sur des données formatées en JSON.
Prenons (…)
Forum Programmation.shell comportement étrange de curl dans un script.
Bonjour à tous,
J'ai un comportement étrange dans un script shell avec la commande curl.
Dans mon script je génère dynamiquement les paramètres de ma commande pour obtenir la commande suivante :
curl -k --request POST -H "type:csv" -H "import:fich" -H "zipped:true" -H "fichier:nbncsv00002.csv.zip" -H "key:JmzEVJ2EezlkfemlfmleSDKKFekv" -T /tmp/tmp.QJENaDVvAV/nbncsv00002.csv.zip http://www.xxx.yyy.zzz:pppp/monappli/import 2>&1>/tmp/tmp.QJENaDVvAV/curlreturn.log
Lors de l'exécution dans le script cette commande ne semble pas atteindre le serveur qui reçois le fichier;ça se caractérise par pas d'entrée dans les logs.
2018, curl a vingt ans
Curl est l’exemple du logiciel utilisé partout, tellement omniprésent que l’on oublie d’en parler. Aucune dépêche ou journal LinuxFr.org dédié à ce logiciel, alors même qu’un de ses homonymes le langage Curl a eu le droit d’être mentionné en 2001. Tandis que le vénérable curl fête ses vingt ans, il est temps de réparer cet honteux oubli.
Curl (curl
ou plutôt cURL pour « client URL request library ») se rapporte en fait à la bibliothèque libcurl et à l’outil en ligne de commande curl, permettant de faire des requêtes sur un réseau (pléthore de protocoles sont pris en charge). Écrits en C, ils existent sur une multitude de systèmes différents et la bibliothèque est utilisable depuis de nombreux (plus de 40) langages (C++, Java, .NET, Perl, PHP, Ruby, etc.).
Forum Linux.général récupérer une info variable sur un site avec CURL
Bonjour,
Savez vous s'il est possible avec CURL de récupérer une info affichée sur une page web avec CURL.
Typiquement ça serait récupérer à la demande l'info du nombre d'annonce sur leboncoin.fr.
Quand on se connecte sur le site il dit "Trouvez la bonne affaire parmi 25 340 788 petites annonces", et moi j'aimerai sur un autre site récupérer le nombre d'annonce qui est affiché sur la page principale.
Merci de votre aide
Forum Programmation.shell enlever les fins de ligne du résultat de curl
Bonjour.
Je souhaite récupérer le retour d'une API web interne via curl, pour la comparer à un résultat prédéterminé ( en fait, de jouer des tests sans me casser les pieds à devoir me retaper le copier/coller partiel en fonction du serveur ni devoir lire le résultat pour être sûr qu'il est bon ).
Donc, j'ai créé un fichier contenant mes listes de paramètres et un script qui appelle l'URI voulue ( un serveur ou l'autre, principalement ) en ajoutant (…)
Forum Linux.débutant Problème d'accès au sous domaine d'un même serveur
Bonjour,
J'ai un serveur sous CentOS 4.9.
J'ai configuré plusieurs sous domaine pour mes sites dans /usr/local/apache/conf/vhosts :
www.xxx.com : site de base
boutique.xxx.com : la boutique du site
Ils sont tous sur le même serveur (même ip), et on y accède sans soucis depuis un navigateur.
Dans mon code PHP, j'utilise la méthode cURL pour accéder à des webservices.
Sauf que la fonction ne marche pas dès que j'appelle mes sous-domaines.
Voici l'erreur retournée :
$ curl boutique.xxx.com
curl: (…)
Forum Programmation.autre Envoyer un multipart/form-data avec ocaml-curl
Bonsoir !
J'écrit un petit programme pour envoyer mes TPs sur un serveur en ocaml, en utilisant ocurl, un wrapper pour libcurl.
J'arrive à faire ce que je veux sans soucis en ligne de commande, mais pas avec ocurl
Je veux vraisemblablement envoyé mon fichier en multipart/form-data
Ma ligne
curl -v "myhost/upload2.php" --form "fichier1= @file.tar.gz" --form "MAX_FILE_SIZE=1000000" -b cookie
Qui répond
> POST /upload2.php HTTP/1.1
> User-Agent: curl/7.32.0
> Host: myhost
> Accept: */*
> Cookie: PHPSESSID=4qbihrkhode23902q1v988a114; cookie_test=1
> Content-Length: 10563
(…)
Forum Linux.debian/ubuntu could not resolve host à la première tentative, mais pas à la 2ème
Bonjour à tous,
J'utilise un petit programme utilisant libcurl qui marche très bien depuis quelques temps, sous Debian stable, connecté en filaire à une Livebox. Ce week-end j'ai mis à jour les paquets qui pouvaient l'être (toujours en stable), ce qui doit se limiter à des corrections de bugs ou failles. Et depuis, mon programme me renvoie une erreur curl 6 : CURLE_COULDNT_RESOLVE_HOST à la première tentative. Si je le relance à la main, la connexion a bien lieu avec (…)