IPIPGO proxy ip Python read JSON files : Traitement des données JSON

Python read JSON files : Traitement des données JSON

Le fichier JSON est en fin de compte un fichier de type "what the hell ? Nous nous sommes engagés dans le crawling frères auraient dû voir le suffixe .json fichier, ce produit est un bloc-notes avec le format. Par exemple, à partir de l'arrière-plan ipipgo pour obtenir la liste IP proxy, neuf fois sur dix sont ce format. Par exemple, si vous l'ouvrez, vous pouvez voir ceci...

Python read JSON files : Traitement des données JSON

Qu'est-ce qu'un fichier JSON ?

Nous nous sommes engagés dans le crawling des frères auraient dû voir le fichier .json suffixe, ce produit est un bloc-notes avec le format. Par exemple, à partir de l'arrière-plan ipipgo pour obtenir la liste IP proxy, neuf fois sur dix sont ce format. Par exemple, vous pouvez l'ouvrir et voir la structure :


{
    "proxies" : [
        {"ip" : "123.45.67.89", "port" : 8080}, {"ip" : "98.76.54.32", "port" : 3128}, {"proxies" : [
        {"ip" : "98.76.54.32", "port" : 3128}
    ]
}

Attention à cela dans le cadre de laparenthèses frisées sur parenthèses centralesC'est la manière standard d'écrire JSON. Si Sensei traite des adresses IP de proxy ou d'autres données, vous devez d'abord vous assurer que cette structure est correcte.

Python : comment manger ce bol de "riz JSON" ?

L'utilisation de Python pour traiter des fichiers JSON est en fait aussi simple que de se défoncer, en trois étapes principales :


import json

 Etape 1 : Ouvrir la boîte
avec open('ipipgo_proxies.json', 'r') as f :
    data = json.load(f)

 Étape 2 : Choisir et trier
for proxy in data['proxies'].
    print(f "Proxy disponibles : {proxy['ip']}:{proxy['port']}")

 Étape 3 : Mise à jour de l'inventaire (au format ipipgo par exemple)
data['proxies'].append({"ip" : "76.135.28.41", "port" : 8888})
with open('new_proxies.json', 'w') as f.
    json.dump(data, f, indent=4)

Et voici le clou du spectacle ! Lorsque l'on utilise le service proxy d'ipipgo, le format JSON renvoyé par leur API est particulièrement bien organisé, avec des noms de champs en minuscules fixes, ce qui est particulièrement pratique pour le traitement par lots.

Comment les IP proxy et JSON s'articulent-ils ?

Engagés dans la collecte de données de vieux conducteurs savent que le proxy IP et le fichier JSON qui est le partenaire en or. Prenez une scène réelle :


import requests
from json.decoder import JSONDecodeError

proxies = {
    'http' : 'http://ipipgo_username:ipipgo_password@gateway.ipipgo.com:9021', 'https' : 'http://ipipgo_username:ipipgo_password@gateway.ipipgo.com:9021'
    'https' : 'https://ipipgo_username:ipipgo_password@gateway.ipipgo.com:9021'
}

try.
    response = requests.get('https://api.example.com/data', proxies=proxies)
    data = response.json() automatiquement converti en dictionnaire
    print(data['results'][0]['ip_address'])
except JSONDecodeError : print("data['results'][0]['ip_address']")
    print("Ce site ne renvoie pas un JSON correct !")

En voici une.Conseils cachésSupport de proxy pour ipipgoL'authentification du nom d'utilisateur et du mot de passe est inscrite directement dans l'adresse du proxy.Cette conception permet de gagner du temps en évitant de traiter manuellement l'authentification à chaque fois.

Guide pratique pour éviter la fosse

Les débutants ont souvent des difficultés à s'y retrouver :

arrêt au stand une posture correcte
json.load() signale une erreur d'encodage Ajouter encoding='utf-8' à open().
Champ KeyError non trouvé Utilisez d'abord data.get('field name') pour récupérer la valeur en toute sécurité.
Échec de la demande en raison d'une défaillance de l'IP du proxy Avec la fonction de commutation automatique d'ipipgo

séance de questions-réponses

Q : Pourquoi dois-je utiliser JSON avec le proxy d'ipipgo ?
R : Parce que leur API renvoie la spécification du format et prend également en charge l'optionaccès en vracrépondre en chantantDemande de statutqui est directement converti en dictionnaire et fonctionne.

Q : Que dois-je faire en cas de saturation de la mémoire lors de la manipulation de fichiers volumineux ?
R : Utilisez la bibliothèque ijson pour la lecture en continu, ou appelez directement l'API de pagination d'ipipgo, ne récupérez pas toutes les données en une seule fois.

Q:json.dump save the Chinese become garbled ?
R : Ajoutez deux paramètres pour maintenir la paix : ensure_ascii=False, encoding='utf-8′.

Et enfin, une connaissance froide : le JSON de la liste de proxy d'ipipgo cache unchamp secretIl s'agit du "region_code", qui permet de sélectionner avec précision l'IP d'exportation d'une région spécifique, mais je ne le dirai pas au grand public !

Cet article a été initialement publié ou compilé par ipipgo.https://www.ipipgo.com/fr/ipdaili/34723.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