Maison développement back-end Tutoriel Python Comment utiliser Scrapy pour explorer les données Zhihu ?

Comment utiliser Scrapy pour explorer les données Zhihu ?

Jun 22, 2023 pm 02:51 PM
知乎 爬虫 scrapy

Scrapy est un outil de robot d'exploration de sites Python qui peut facilement nous aider à obtenir diverses données sur Internet. Zhihu est une plateforme sociale de questions-réponses populaire. Utilisez Scrapy pour capturer rapidement des questions, des réponses, des informations sur les utilisateurs et d'autres données sur Zhihu. Cet article explique comment utiliser Scrapy pour explorer les données Zhihu.

  1. Installer Scrapy

Vous devez d'abord installer Scrapy. Vous pouvez l'installer directement à l'aide de la commande pip :

pip install scrapy
Copier après la connexion
  1. Create Scrapy project

Entrez le répertoire dans lequel vous souhaitez créer un projet Scrapy le terminal et utilisez la commande suivante pour créer son projet :

scrapy startproject zhihu
Copier après la connexion

Cette commande créera un projet Scrapy nommé "zhihu" dans le répertoire courant.

  1. Create Spider

Utilisez la commande suivante pour créer un fichier Spider nommé "zhihu_spider.py" dans le répertoire du projet :

scrapy genspider zhihu_spider zhihu.com
Copier après la connexion

Cette commande créera un fichier "zhihu_spider.py" dans le sous-répertoire "spiders" du répertoire du projet. Ce fichier contient un Spider avec zhihu.com comme URL de départ.

  1. Write Spider code

Ouvrez le fichier "zhihu_spider.py" et ajoutez le code suivant :

import scrapy

class ZhihuSpider(scrapy.Spider):
    name = 'zhihu'
    allowed_domains = ['zhihu.com']
    start_urls = ['https://www.zhihu.com/']

    def parse(self, response):
        pass
Copier après la connexion

Dans le code, une classe Spider nommée "ZhihuSpider" est définie. La classe Spider doit définir les attributs suivants :

  • name : Nom de l'araignée
  • allowed_domains : Nom de domaine consulté
  • start_urls : Spider's URL de démarrage

Dans cet exemple, l'URL de départ de Spider est définie sur zhihu.com. Spider doit également contenir une méthode appelée « parse » pour traiter les données renvoyées par la réponse. Dans cet exemple, la méthode "parse" n'est pas encore implémentée, donc une instruction "pass" vide est ajoutée en premier.

  1. Analyser les données de la page

Après avoir terminé la création de Spider, vous devez ajouter le code pour analyser les données de la page. Dans la méthode "parse", utilisez le code suivant :

def parse(self, response):
        questions = response.css('div[data-type="question"]')
        for question in questions:
            yield {
                'question': question.css('h2 a::text').get(),
                'link': question.css('h2 a::attr(href)').get(),
                'answers': question.css('div.zm-item-answer::text').getall(),
            }
Copier après la connexion

Ce code récupère les éléments div de la page qui contiennent l'attribut "data-type" sans "question". Ensuite, parcourez chaque élément div pour extraire le titre de la question, le lien et la liste de réponses.

Dans le code ci-dessus, "yield" est un mot-clé du langage Python qui est utilisé pour générer un générateur. Un générateur est un itérateur contenant des éléments. Après le retour de chaque élément, l'exécution est suspendue à la position de cet élément. Dans Scrapy, le mot-clé « rendement » est utilisé pour renvoyer les données analysées de la page dans Scrapy.

  1. Exécutez le robot d'exploration

Après avoir fini d'écrire le code, utilisez la commande suivante pour exécuter le robot d'exploration dans le terminal :

scrapy crawl zhihu
Copier après la connexion

this La commande démarrera le framework Scrapy et commencera à explorer les données Zhihu. Scrapy accédera automatiquement à l'URL de départ spécifiée dans Spider et analysera les données de page renvoyées via la méthode "parse". Les données analysées seront envoyées au terminal. Si vous devez enregistrer des données, vous pouvez stocker les données dans des fichiers CSV, JSON, etc.

  1. Exploration des données utilisateur

Le code ci-dessus ne peut explorer que les questions, réponses et autres données, mais ne peut pas obtenir d'informations sur l'utilisateur. Si vous devez explorer les données utilisateur, vous devez utiliser l'interface API de Zhihu. Dans Spider, vous pouvez utiliser le code suivant pour obtenir les données au format JSON renvoyées par l'interface API :

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'}
url = f'https://www.zhihu.com/api/v4/members/{user}?include=following_count,follower_count,badge[?(type=best_answerer)].topics&limit=20'
yield scrapy.Request(url, headers=headers, callback=self.parse_user)
Copier après la connexion

Ce code obtient les informations utilisateur spécifiées depuis l'interface API. Ici, la chaîne au format f-string est utilisée pour insérer le nom d'utilisateur de l'utilisateur à obtenir dans l'URL.

Dans la fonction de rappel, utilisez le code suivant pour extraire les données requises des données au format JSON :

def parse_user(self, response):
        data = json.loads(response.body)['data']
        following_count = data['following_count']
        follower_count = data['follower_count']
        best_answerer = data['badge'][0]['topics']
        yield {
            'user_id': data['id'],
            'name': data['name'],
            'headline': data['headline'],
            'following_count': following_count,
            'follower_count': follower_count,
            'best_answerer': best_answerer,
        }
Copier après la connexion

Ce code extrait l'identifiant et le pseudo de l'utilisateur des données JSON , avatar, nombre de followers, nombre de fans, meilleures réponses aux questions et autres données.

  1. Summary

Cet article explique comment utiliser Scrapy pour explorer les données Zhihu. Tout d’abord, vous devez créer un projet Scrapy et créer un Spider. Ensuite, utilisez les sélecteurs CSS pour analyser les données de la page et stocker les données analysées dans le générateur. Enfin, stockez-le dans des fichiers CSV, JSON, etc., ou affichez-le directement sur le terminal. Si vous avez besoin d'obtenir des données utilisateur, vous pouvez utiliser l'interface API Zhihu pour extraire les données pertinentes des données JSON.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment annuler le renouvellement automatique pour les membres de l'application Zhihu Comment annuler le renouvellement automatique pour les membres de l'application Zhihu Comment annuler le renouvellement automatique pour les membres de l'application Zhihu Comment annuler le renouvellement automatique pour les membres de l'application Zhihu Mar 13, 2024 am 11:04 AM

Comment annuler le renouvellement automatique de l'adhésion à l'application Zhihu ? L'application Zhihu est un logiciel mobile très pratique. Ce logiciel a de nombreuses fonctions, et chaque fonction apportera une sensation différente aux utilisateurs. Certains contenus de ce logiciel nécessitent que les utilisateurs s'inscrivent en tant que membre avant de pouvoir les lire. L'adhésion à ce logiciel n'est pas chère et un abonnement mensuel continu sera moins cher. Certains joueurs veulent savoir comment annuler le renouvellement automatique. L'éditeur ci-dessous a compilé les méthodes d'annulation du renouvellement automatique pour votre référence. Comment annuler le renouvellement automatique pour les membres de l'application Zhihu Les membres Zhihu peuvent choisir quatre méthodes de renouvellement, notamment Apple Pay, WeChat Pay, Alipay Pay et Baidu Pay. Pour les utilisateurs qui choisissent Baidu Pay, le renouvellement peut être géré via le paiement WeChat ou Alipay.

Comment copier le lien de la page d'accueil personnelle de Zhihu Comment copier le lien de la page d'accueil personnelle de Zhihu Feb 23, 2024 pm 12:40 PM

Le lien de la page d'accueil personnelle dans Zhihu peut être copié, alors comment copier le lien de la page d'accueil personnelle ? Les utilisateurs doivent accéder à leur page d'accueil personnelle, puis cliquer sur les trois points en haut à droite et choisir de copier le lien. Cette introduction sur la façon de copier un lien vers une page d'accueil personnelle peut vous indiquer le contenu spécifique. Ce qui suit est une introduction détaillée, alors jetez-y un œil ! Tutoriel Zhihu : Comment copier un lien vers la page d'accueil personnelle de Zhihu ? Réponse : Cliquez sur les trois points sur votre page d'accueil personnelle et sélectionnez Copier le lien. Méthode spécifique : 1. Tout d'abord, cliquez sur l'avatar dans Mon pour accéder à la page d'accueil. 2. Cliquez sur l'icône à trois points dans le coin supérieur droit. 3. Cliquez sur le lien de copie ci-dessous. Ensuite, vous pouvez l'envoyer à d'autres

Mar 22, 2024 pm 02:11 PM

1. Ouvrez l'application Zhihu et cliquez sur [Mon] dans le coin inférieur droit ; 2. Vous pouvez voir [Mode nuit] sur l'interface Mon, cliquez pour le définir. Si vous avez des questions, allez à Zhihu. Zhihu, une communauté de questions-réponses digne de confiance, a pour mission de permettre à chacun d'obtenir efficacement des réponses fiables. Zhihu s'appuie sur son atmosphère communautaire sérieuse, professionnelle et conviviale, son contenu de haute qualité structuré et facile d'accès et sa plateforme de production de contenu basée sur des questions-réponses.

Savez-vous si vous bloquez quelqu'un sur Zhihu ? Savez-vous si vous bloquez quelqu'un sur Zhihu ? Mar 21, 2024 pm 03:44 PM

Selon notre compréhension, la personne blacklistée ne peut pas savoir directement qu’elle a été blacklistée. Mais si la personne bloquée envoie un message privé, elle se rendra compte qu'elle a été bloquée en recevant un message indiquant que le message ne peut pas être envoyé. Cependant, si la personne bloquée n'utilise pas la messagerie privée, elle risque de ne pas être informée qu'elle a été bloquée.

Mar 22, 2024 pm 07:00 PM

1. Ouvrez l'application Zhihu, cliquez sur Mon dans le coin inférieur droit et cliquez sur l'option de création. 2. Sur la page Centre de création, cliquez sur Mon contenu, puis cliquez sur Articles. 3. Après avoir accédé à la page de l'article, cliquez sur Écrire un article ci-dessous, modifiez le contenu de l'article et publiez-le.

Zhihu désactive le renouvellement automatique de l'adhésion Zhihu désactive le renouvellement automatique de l'adhésion Mar 21, 2024 pm 04:01 PM

Ouvrez l'application Zhihu, accédez à votre page d'accueil personnelle et cliquez sur « Paramètres » → « Compte et sécurité » → « Service d'adhésion VIP » → « Cycle d'achat d'adhésion » → « Annuler le renouvellement automatique » pour désactiver la fonction de renouvellement automatique afin d'éviter toute déduction inutile.

Comment afficher vos propres enregistrements de commentaires sur Zhihu ? Comment afficher les enregistrements de commentaires historiques ? Comment afficher vos propres enregistrements de commentaires sur Zhihu ? Comment afficher les enregistrements de commentaires historiques ? Mar 12, 2024 pm 02:40 PM

Concernant cette plateforme, nous avons beaucoup de commentaires et d'autres contenus que nos amis recherchent, donc peu importe où nous sommes, nous pouvons les obtenir et les regarder via cette plateforme. Pour visualiser certains des nôtres, je pense que de nombreux utilisateurs le seront. très intéressé et apprécié par certains commentaires. Quel que soit leur aspect, nous pouvons choisir parmi différentes méthodes à tout moment, non seulement sans restrictions, cela vous permet également de consulter librement certains enregistrements d'évaluations historiques. être très simple, mais il y a encore beaucoup d'utilisateurs qui ne savent pas comment effectuer ces opérations, alors aujourd'hui je voudrais vous souhaiter une bonne année. Laissez-moi vous donner une bonne explication de certains des choix ci-dessus. C'est à ne pas manquer. Dépêchez-vous et rejoignez-nous.

Comment lire des romans sur Zhihu ? Partagez comment lire des romans sur Zhihu ! Comment lire des romans sur Zhihu ? Partagez comment lire des romans sur Zhihu ! Mar 15, 2024 pm 05:34 PM

1. Comment lire des romans sur Zhihu ? Partagez comment lire des romans sur Zhihu ! 1. Rechercher des romans : ouvrez l'application Zhihu, saisissez des romans dans la barre de recherche et recherchez de nombreuses ressources inédites sur différents thèmes. 2. Lisez des romans dans la chaîne Salt Selection pour les membres : Dans la barre inférieure de l'interface de la page d'accueil, cliquez sur les membres et vous pourrez voir la colonne Salt Selection, qui contient un grand nombre de romans. 3. Romans recommandés sur la page d'accueil : Si vous lisez trop de romans, le logiciel recommandera automatiquement les romans qui vous intéressent. Si vous parcourez les recommandations de la page d'accueil plusieurs fois, vous pourrez lire de nouveaux romans. 4. Suivez les auteurs de romans et lisez des romans : de nombreux auteurs se sont installés dans le logiciel. Suivez-les ou abonnez-vous et vous recevrez des rappels de mise à jour en temps opportun.

See all articles