Maison  >  Article  >  développement back-end  >  Crawler PHP : analyse des données JSON à l'aide d'AJAX et JSONP

Crawler PHP : analyse des données JSON à l'aide d'AJAX et JSONP

WBOY
WBOYoriginal
2023-06-13 10:34:521679parcourir

Avec la popularité d'Internet, l'acquisition et le traitement des données sont devenus de plus en plus importants. Parmi eux, la demande d’obtention de données de sites Web spécifiées via des programmes d’exploration augmente également. Cet article explique comment utiliser un robot PHP pour analyser les données JSON via AJAX et JSONP.

  1. Introduction à AJAX

AJAX (Asynchronous Javascript And XML) fait référence à une technologie qui met à jour le contenu d'un site Web de manière asynchrone en arrière-plan sans recharger la page. Grâce à la technologie AJAX, les pages Web peuvent être rendues plus fluides et plus réactives.

  1. Introduction à JSONP

JSONP (JSON with Padding) est une technologie de demande de données inter-domaines. Le principe est de profiter du fait que l'attribut src de la balise script n'est pas restreint par la politique de même origine du navigateur, et de transmettre les données à obtenir en paramètres de la fonction de rappel pour réaliser des requêtes et des références inter-domaines à données.

  1. Présentez la bibliothèque jQuery

Avant de commencer à écrire du code AJAX et JSONP, vous devez d'abord présenter la bibliothèque jQuery. Ceci peut être réalisé en ajoutant le code suivant à l'en-tête de la page HTML :

<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
  1. Utiliser AJAX pour demander des données JSON

Ce qui suit est un exemple de code d'utilisation d'AJAX pour demander des données JSON :

$.ajax({
    url: 'http://example.com/json_data',
    type: 'GET',
    dataType: 'json',
    success: function(data) {
        // 处理获取到的 JSON 数据
    },
    error: function() {
        // 请求失败的处理
    }
});

Parmi eux, le paramètre url spécifie les données JSON à demander ; le paramètre dataType spécifie le type de données de réponse, spécifié ici comme JSON ; la fonction de rappel de réussite est utilisée pour traiter les données renvoyées lorsque la demande est réussie ; utilisé pour traiter l’échec de la demande.

Dans la fonction de rappel de réussite, vous pouvez utiliser les méthodes fournies par jQuery pour traiter les données JSON obtenues. Par exemple, vous pouvez mettre à jour le contenu de la page Web grâce aux données obtenues, telles que :

$.ajax({
    url: 'http://example.com/json_data',
    type: 'GET',
    dataType: 'json',
    success: function(data) {
        $('#content').html(data.content);
    },
    error: function() {
        $('#content').html('请求失败');
    }
});
  1. Utilisez JSONP pour demander des données JSON

Ce qui suit est un exemple de code d'utilisation de JSONP pour demander des données JSON :

$.ajax({
    url: 'http://example.com/json_data',
    data: {callback: 'handleResponse'},
    dataType: 'jsonp',
    jsonp: false,
    jsonpCallback: 'handleResponse'
});

function handleResponse(data) {
    // 处理获取到的 JSON 数据
}

Parmi eux, le paramètre data spécifie la fonction de rappel Le nom ; le paramètre dataType spécifie le type de données de réponse, spécifié ici comme JSONP ; le paramètre jsonp spécifie s'il faut activer JSONP, spécifié ici comme false le paramètre jsonpCallback spécifie le nom de ; la fonction de rappel.

Dans la fonction de rappel handleResponse, vous pouvez utiliser les données JSON obtenues pour le traitement. Par exemple, le contenu de la page Web peut être mis à jour grâce aux données obtenues, telles que :

function handleResponse(data) {
    $('#content').html(data.content);
}

Il convient de noter que dans la requête JSONP, le serveur doit renvoyer les données JSON enveloppées dans le nom de la fonction de rappel entre parenthèses, telles que comme :

handleResponse({"content": "这是要获取的数据"});
  1. Conclusion

Cet article explique comment utiliser la technologie AJAX et JSONP pour analyser les données JSON. L'obtention de données JSON via AJAX et JSONP peut rendre l'acquisition et le traitement des données plus pratiques et plus rapides. Si les lecteurs ont des besoins en matière d'acquisition et de traitement de données JSON, ils peuvent utiliser la méthode présentée dans cet article pour y parvenir.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn