IPIPGO proxy ip Python parsing JSON response : Python proxy response parsing

Python parsing JSON response : Python proxy response parsing

Python traitement proxy IP JSON réponse, main dans la main pour vous apprendre à éviter le pit crawl amis doivent avoir rencontré cette situation - évidemment obtenu le proxy IP API données de retour, mais n'est pas analysé hors de l'IP disponible. pas de panique, nous allons étape par étape, vous apprendre à utiliser Python pour jouer proxy IP JSON Réponse. Version de base ...

Python parsing JSON response : Python proxy response parsing

Python gère les réponses JSON provenant d'IP proxy, en évitant les pièges

Nos amis crawlers ont dû rencontrer cette situation - ils ont bien reçu les données de retour de l'API proxy IP, mais ne peuvent pas analyser l'IP disponible. Pas de panique, nous allons pas à pas vous apprendre à utiliser Python pour jouer avec la réponse JSON de l'API proxy.

Version de base : analyse directe du contenu de la réponse

Prenons par exemple la réponse API d'ipipgo et commençons par une structure typique (données simulées) :


{
  "code" : 200,
  "data" : [
    {"ip" : "1.1.1.1", "port":8080, "expire_time" : "2024-01-01 12:00:00"},
    {"ip" : "2.2.2.2", "port":8888, "expire_time" : "2024-01-01 12:05:00"}
  ]
}

Lorsqu'elle est traitée en Python, la fonctionNe vous contentez pas de le charger et de vous arrêter là.N'oubliez pas d'ajouter un code de vérification du statut :


importer des demandes
import json

resp = requests.get('https://api.ipipgo.com/getip')
if resp.status_code == 200 : data = json.loads(resp.text)
    data = json.loads(resp.text)
    si data['code'] == 200.
        if data['code'] == 200 : for proxy in data['data'] : print(f"{proxy['data'])")
            print(f"{proxy['ip']}:{proxy['port']}")

Compétences pratiques : gestion des exceptions de l'IP proxy

Avez-vous déjà rencontré l'une de ces situations ? Il est évident que les données sont renvoyées, mais la propriété intellectuelle échoue lorsqu'elle est utilisée. Il est recommandé, lors de l'analyse deAjouter un contrôle de validité: :


from datetime import datetime

for proxy in data['data']: : expire = datetime.strptime(proxy['expire_time'])
    expire = datetime.strptime(proxy['expire_time'], "%Y-%m-%d %H:%M:%S")
    if datetime.now() < expire.
        usable_proxies.append(proxy)

Les dates d'expiration des procurations d'ipipgo sont indiquées à la seconde près, ce qui est particulièrement important pour les programmes qui doivent fonctionner pendant de longues périodes. Les dates d'expiration de leurPackage Dynamic Residential (Enterprise Edition)Période de validité plus longue, adaptée aux scénarios d'entreprise qui nécessitent une IP stable.

Opérations avancées : commutation automatique des pools de proxy

Combiné aux fonctionnalités de l'API d'ipipgo, il est possible de créer un pool d'agents intelligents. Notez ces deux points essentiels :

  • mettre en place30 secondes à l'avanceActualiser les adresses IP arrivant à expiration
  • Stockage séparé pour les différents protocoles (HTTP/HTTPS)

def update_proxy_pool() :
    new_proxies = requests.get('https://api.ipipgo.com/reload').json()
    for p in new_proxies['data'].
        if p['type'] == 'https'.
            https_pool.append(f"{p['ip']}:{p['port']}")
        sinon.
            http_pool.append(f"{p['ip']}:{p['port']}") 

Pourquoi recommandez-vous ipipgo ?

Il a utilisé 7 ou 8 services proxy et a finalement choisi celui d'ipipgo.Trois avantages indéniables: :

Fonctionnalité Autres FAQ solutions ipipgo
Soutien au protocole Protocole HTTP uniquement Support complet de Socks5/HTTPS
format de réponse Incohérence des champs JSON Structure fixe + noms de champs explicites
Options du paquet achat obligatoire d'un grand paquet de circulation Forfaits statiques à partir de 35 $/IP

AQ pour les questions à haute fréquence

Q:JSONDecodeError est toujours signalé lors de l'analyse ?
Il est recommandé d'utiliser resp.status_code pour déterminer le statut, puis d'ajouter la logique d'analyse parcellaire try-except.

Q : J'ai obtenu l'adresse IP, mais le délai de connexion est dépassé.
R : Il se peut que l'adresse IP soit bloquée, changez-la en ipipgo.Ligne TKCette ligne a un taux de réussite plus élevé.

Q : Vous devez traiter plusieurs retours API en même temps ?
R : Utilisez la fonctionInterface d'extraction par lotsSi vous souhaitez obtenir des adresses IP de plusieurs régions à la fois, n'oubliez pas d'ajouter des filtres de champs géographiques à votre analyse.

Une dernière chose.Conseils cachés: retour de l'assistance API d'ipipgoDifférents formats de donnéesS'il est difficile de traiter JSON en Python, vous pouvez passer au format txt et le lire directement ligne par ligne, en particulier dans les paramètres de l'API en ajoutant un format=txt sur la ligne. Notez toutefois que vous perdrez alors le port, le délai d'expiration et d'autres détails, ce qui convient pour tester rapidement la scène.

Cet article a été initialement publié ou compilé par ipipgo.https://www.ipipgo.com/fr/ipdaili/41991.html

scénario d'entreprise

Découvrez d'autres solutions de services professionnels

💡 Cliquez sur le bouton pour plus de détails sur les services professionnels

Vente de fin d'année de nouvelles IP dynamiques 10W+ pour les États-Unis

Fournisseur professionnel de services d'IP proxy étrangers-IPIPGO

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous contacter

Nous contacter

13260757327

Demande de renseignements en ligne. QQ chat

Courriel : hai.liu@xiaoxitech.com

Horaires de travail : du lundi au vendredi, de 9h30 à 18h30, jours fériés.
Suivre WeChat
Suivez-nous sur WeChat

Suivez-nous sur WeChat

Haut de page
fr_FRFrançais