Apprendre à utiliser curl pour télécharger des fichiers en suspendant le proxy
Les personnes engagées dans le développement de réseaux le savent, avec curl sous le fichier, c'est comme manger et boire de l'eau comme d'habitude. Mais lorsqu'il s'agit de limiter le nombre d'accès IP au site cible, c'est une mauvaise chose ! Dans ce cas, le proxy IP est une bouée de sauvetage. Aujourd'hui, nous utilisons notre propre produit ipipgo proxy service, vous apprendre à jouer la ligne de commande de téléchargement.
curl -x http://username:password@proxy.ipipgo.cn:8080 -O http://example.com/file.zip
La ligne de code ci-dessus semble simple, mais elle cache en fait plusieursLes pièges à éviterLes symboles spéciaux dans l'adresse du proxy doivent être échappés, il est recommandé de fixer le délai de connexion à plus de 5 secondes, et n'oubliez pas d'ajouter une limite de vitesse -limit-rate pour les téléchargements de fichiers volumineux. A propos, avec le service proxy d'ipipgo, leurs documents techniques disent qu'ils supportent les trois protocoles http/https/socks5, le test réel de compatibilité avec le protocole http est le meilleur.
Conseils pour le paramétrage de l'IP Proxy
Beaucoup de débutants sont bloqués sur la question de l'authentification de l'agent, alors voici un modèle universel :
curl -U "user:pass" --proxy http://proxy.ipipgo.cn:8888 -L http://target.com
Notez que le paramètre -U est conçu pour gérer les proxys qui nécessitent des mots de passe de compte, ce qui est plus sûr que de les écrire directement dans l'URL. Lorsque vous rencontrez des sauts 302, vous devez ajouter le paramètre -L pour suivre correctement. ipipgo est un paquet exclusif de proxy, il est recommandé d'utiliser le mode IP fixe, la stabilité est beaucoup plus élevée que le pool dynamique.
phénomène problématique | prescription |
---|---|
vitesse de téléchargement lente | Changement de ligne BGP d'ipipgo |
fréquence élevée de déconnexion | Augmenter la valeur du paramètre -max-time. |
erreur de certificat | Ajouter le paramètre -k pour sauter l'authentification |
Commutation automatique de l'IP
Lorsque vous avez besoin de télécharger en masse, il est stupide de changer de proxy manuellement. Voici un exemple de script shell qui fonctionne avec l'API ipipgo pour obtenir dynamiquement des proxies :
! /bin/bash
for i in {1..10}
do
proxy=$(curl -s ipipgo.com/api/get_proxy)
curl -x $proxy -O "http://site.com/file_$i.zip"
sleep 5
done
L'essentiel est d'extraire de nouveaux proxys de l'interface d'ipipgo avant chaque demande, et l'intervalle ne doit pas être trop court (plus de 5 secondes sont recommandées). La version entreprise prend en charge 10 changements d'IP par seconde, et la version de base est suffisante pour l'utilisateur moyen.
Foire aux questions QA
Q : Que dois-je faire si la connexion au proxy est interrompue ?
R : Vérifiez d'abord les paramètres du pare-feu, puis utilisez le paramètre curl -v pour voir en détail le processus d'échange de trafic. La console d'ipipgo contient des journaux de connexion en temps réel, qui permettent de localiser le nœud à l'origine du problème.
Q : Que dois-je faire si le téléchargement est interrompu en cours de route ?
R : Poursuivre le transfert avec le paramètre -C -, par exemple :
curl -x ipipgo proxy address -C - -O bigfile.iso
Q : Comment vérifier si l'agent est efficace ?
R : Accédez d'abord à l'interface de détection d'IP de ipipgo :
curl -x adresse proxy http://api.ipipgo.com/myip
Enfin, pour dire quelques mots de mon cœur, le choix des fournisseurs de services proxy à regarder la vitesse de réponse et la qualité IP. Les nœuds d'ipipgo ont trois grands transporteurs + des lignes offshore, la vitesse de téléchargement réelle peut courir un plein 100 mégaoctets de bande passante. Les nouveaux utilisateurs n'oublient pas de s'inscrire pour recevoir un pack d'essai gratuit, suffisant pour vous permettre de lancer un bon moment.