Table des matières
Expérience de démarrage avec le robot d'exploration de base python3
Maison développement back-end Tutoriel Python Introduction au robot d'exploration de base Python3

Introduction au robot d'exploration de base Python3

Sep 25, 2017 am 10:53 AM
python3 基础 简介


Expérience de démarrage avec le robot d'exploration de base python3

C'est la première fois que j'écris un blog, donc je suis un peu nerveux, alors ne commentez pas si vous le faites ça ne me plaît pas.
S'il y a des lacunes, j'espère que les lecteurs les signaleront et je les corrigerai certainement.

学习爬虫之前你需要了解(个人建议,铁头娃可以无视):
- **少许网页制作知识,起码要明白什么标签...**
- **相关语言基础知识。比如用java做爬虫起码会用Java语言,用python做爬虫起码要会用python语言...**
- **一些网络相关知识。比如TCP/IP、cookie之类的知识,明白网页打开的原理。**
- **国家法律。知道哪些能爬,哪些不能爬,别瞎爬。**
Copier après la connexion

Comme l'indique le titre, tous les codes de cet article utilisent python3.6.X.

Tout d'abord, vous devez installer (pip3 install xxxx et tout ira bien)

  1. module de requêtes

  2. Module BeautifulSoup (ou module lxml)

Ces deux bibliothèques sont très puissantes et sont utilisées pour envoyer des requêtes de pages Web et ouvrir des pages Web, tandis que beautifulsoup et lxml sont utilisées pour analyser le contenu et extraire ce que vous avez. vouloir. BeautifulSoup privilégie les expressions régulières, lxml privilégie XPath. Parce que je suis plus habitué à utiliser la bibliothèque beautifulsoup, cet article utilise principalement la bibliothèque beautifulsoup sans entrer trop dans les détails de lxml. (Il est recommandé de lire la documentation avant de l'utiliser)

La structure principale du robot :

  • Manager : gérez les adresses que vous souhaitez explorer.

  • Téléchargeur : téléchargez les informations de la page Web.

  • Filtre : filtrez le contenu dont vous avez besoin à partir des informations de la page Web téléchargée.

  • Stockage : enregistrez les éléments téléchargés là où vous souhaitez les enregistrer. (Selon la situation réelle, c'est facultatif.)

Fondamentalement, tous les robots d'exploration Web avec lesquels j'ai été en contact ne peuvent pas échapper à cette structure, allant de sracpy à urllib. Tant que vous connaissez cette structure, vous n'avez pas besoin de la mémoriser. L'avantage de la connaître est que vous pouvez au moins savoir ce que vous écrivez lors de l'écriture, et vous saurez où déboguer lorsqu'un bug survient.

Il y a beaucoup de bêtises au début... Le texte est le suivant :

Cet article utilise le crawling https://baike.baidu.com/item/Python (le Baidu entrée de python à titre d'exemple) :

(Parce que les captures d'écran sont trop gênantes.. Ce sera la seule image de cet article)

Si vous voulez pour explorer le contenu de l'entrée python, vous devez d'abord connaître l'URL que vous souhaitez explorer :

url = 'https://baike.baidu.com/item/Python'
Copier après la connexion

Parce que vous n'avez besoin que d'explorer cette page, le gestionnaire est OK.

 html = request.urlopen(url)
Copier après la connexion

Appelez la fonction urlopen(), le téléchargeur est OK

    Soup = BeautifulSoup(html,"html.parser")
    baike = Soup.find_all("p",class_='lemma-summary')
Copier après la connexion

Utilisez la fonction beautifulsoup et la fonction find_all dans la bibliothèque Beautifulsoup, l'analyseur est OK
Dites quelque chose ici, la valeur de retour de la fonction find_all est une liste. Par conséquent, la sortie doit être imprimée en boucle.

Comme cet exemple n'a pas besoin d'être enregistré, il peut être imprimé directement, donc :

for content in baike:    
print (content.get_text())
Copier après la connexion

La fonction de get_text() est d'extraire le texte dans l'étiquette.

Organisez le code ci-dessus :

import requestsfrom bs4 import BeautifulSoupfrom urllib import requestimport reif __name__ == '__main__':
    url = 'https://baike.baidu.com/item/Python'
    html = request.urlopen(url)
    Soup = BeautifulSoup(html,"html.parser")
    baike = Soup.find_all("p",class_='lemma-summary')    for content in baike:        print (content.get_text())
Copier après la connexion

L'entrée dans l'Encyclopédie Baidu apparaîtra.
Des méthodes similaires peuvent également explorer certains romans, images, titres, etc., et ne se limitent en aucun cas aux entrées.
Si vous parvenez à écrire ce programme après avoir clôturé cet article, félicitations, vous commencez. N'oubliez pas de ne jamais mémoriser le code.

Les étapes sont omises... L'ensemble du processus est un peu rude... Désolé... ça a glissé ( ̄ー ̄)...

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)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

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)

Benchmark de performances Python ORM : comparaison de différents frameworks ORM Benchmark de performances Python ORM : comparaison de différents frameworks ORM Mar 18, 2024 am 09:10 AM

Les frameworks de mappage objet-relationnel (ORM) jouent un rôle essentiel dans le développement de Python, ils simplifient l'accès et la gestion des données en créant un pont entre les bases de données objet et relationnelles. Afin d'évaluer les performances de différents frameworks ORM, cet article comparera les frameworks populaires suivants : sqlAlchemyPeeweeDjangoORMPonyORMTortoiseORM Méthode de test Le benchmark utilise une base de données SQLite contenant 1 million d'enregistrements. Le test a effectué les opérations suivantes sur la base de données : Insérer : Insérer 10 000 nouveaux enregistrements dans la table Lire : Lire tous les enregistrements de la table Mettre à jour : Mettre à jour un seul champ pour tous les enregistrements de la table Supprimer : Supprimer tous les enregistrements de la table Chaque opération

Introduction au framework Yii : comprendre les concepts de base de Yii Introduction au framework Yii : comprendre les concepts de base de Yii Jun 21, 2023 am 09:39 AM

Le framework Yii est un framework de développement PHP hautes performances, hautement évolutif et hautement maintenable, très efficace et fiable lors du développement d'applications Web. Le principal avantage du framework Yii réside dans ses fonctionnalités et méthodes de développement uniques, tout en intégrant également de nombreux outils et fonctions pratiques. Concept de base du framework Yii, le modèle MVC, Yii adopte le modèle MVC (Model-View-Controller), qui est un modèle qui divise l'application en trois parties indépendantes, à savoir le modèle de traitement de logique métier et le modèle de présentation de l'interface utilisateur. .

Tutoriel de base de PHP : du débutant au maître Tutoriel de base de PHP : du débutant au maître Jun 18, 2023 am 09:43 AM

PHP est un langage de script open source côté serveur largement utilisé qui peut gérer toutes les tâches de développement Web. PHP est largement utilisé dans le développement Web, notamment pour ses excellentes performances en matière de traitement dynamique des données, il est donc apprécié et utilisé par de nombreux développeurs. Dans cet article, nous expliquerons les bases de PHP étape par étape pour aider les débutants à devenir compétents. 1. Syntaxe de base PHP est un langage interprété dont le code est similaire au HTML, CSS et JavaScript. Chaque instruction PHP se termine par un point-virgule ;

Application de Python ORM dans les projets Big Data Application de Python ORM dans les projets Big Data Mar 18, 2024 am 09:19 AM

Le mappage objet-relationnel (ORM) est une technologie de programmation qui permet aux développeurs d'utiliser des langages de programmation objet pour manipuler des bases de données sans écrire directement de requêtes SQL. Les outils ORM en python (tels que SQLAlchemy, Peewee et DjangoORM) simplifient l'interaction avec les bases de données pour les projets Big Data. Avantages Simplicité du code : ORM élimine le besoin d'écrire de longues requêtes SQL, ce qui améliore la simplicité et la lisibilité du code. Abstraction des données : ORM fournit une couche d'abstraction qui isole le code de l'application des détails d'implémentation de la base de données, améliorant ainsi la flexibilité. Optimisation des performances : les ORM utilisent souvent la mise en cache et les opérations par lots pour optimiser les requêtes de base de données, améliorant ainsi les performances. Portabilité : ORM permet aux développeurs de

Obtenez une compréhension approfondie de 7 modèles de conception Java couramment utilisés Obtenez une compréhension approfondie de 7 modèles de conception Java couramment utilisés Dec 23, 2023 pm 01:01 PM

Comprendre les modèles de conception Java : une introduction aux 7 modèles de conception couramment utilisés, des exemples de code spécifiques sont nécessaires. Les modèles de conception Java sont une solution universelle aux problèmes de conception de logiciels. Ils fournissent un ensemble d'idées de conception et de principes comportementaux largement acceptés. Les modèles de conception nous aident à mieux organiser et planifier la structure du code, rendant le code plus maintenable, lisible et évolutif. Dans cet article, nous présenterons 7 modèles de conception couramment utilisés en Java et fournirons des exemples de code correspondants. Patte Singleton

Implémenter une persistance efficace des données à l'aide de Python ORM Implémenter une persistance efficace des données à l'aide de Python ORM Mar 18, 2024 am 09:25 AM

Le mappage objet-relationnel (ORM) est une technologie qui permet de construire un pont entre les langages de programmation orientés objet et les bases de données relationnelles. L'utilisation de pythonORM peut simplifier considérablement les opérations de persistance des données, améliorant ainsi l'efficacité et la maintenabilité du développement d'applications. Avantages L'utilisation de PythonORM présente les avantages suivants : Réduire le code passe-partout : ORM génère automatiquement des requêtes SQL, évitant ainsi d'écrire beaucoup de code passe-partout. Simplifiez l'interaction avec la base de données : ORM fournit une interface unifiée pour interagir avec la base de données, simplifiant ainsi les opérations sur les données. Améliorer la sécurité : ORM utilise des requêtes paramétrées, qui peuvent empêcher les vulnérabilités de sécurité telles que l'injection SQL. Promouvoir la cohérence des données : ORM assure la synchronisation entre les objets et les bases de données et maintient la cohérence des données. Choisissez ORM pour avoir

Ajoutez du charme GUI à vos projets avec Python Tkinter Ajoutez du charme GUI à vos projets avec Python Tkinter Mar 24, 2024 am 09:46 AM

Tkinter est une bibliothèque puissante pour créer des interfaces utilisateur graphiques (GUI) en python. Il est connu pour sa simplicité, sa compatibilité multiplateforme et son intégration transparente avec l'écosystème Python. En utilisant Tkinter, vous pouvez ajouter une interface conviviale à votre projet, améliorant ainsi l'expérience utilisateur et simplifiant l'interaction avec votre application. Création d'une application GUI Tkinter Pour créer une application GUI à l'aide de Tkinter, effectuez les étapes suivantes : Importez la bibliothèque Tkinter : importtkinterastk Créez la fenêtre principale de Tkinter : root=tk.Tk() Configurez la fenêtre principale : Définissez le titre, la taille et la position de la fenêtre. , etc. Ajouter des éléments GUI : Utilisation de Tki

Du novice au maître : un cours accéléré sur Java Git Du novice au maître : un cours accéléré sur Java Git Mar 27, 2024 pm 10:41 PM

Git est un système de contrôle de version distribué qui aide les équipes à collaborer sur le développement de logiciels. Pour les développeurs Java, comprendre Git est crucial car il fournit une plate-forme pour gérer les modifications de code, suivre l'historique du code et collaborer avec d'autres. Installez Git pour les débutants (comprenez les bases) : installez le logiciel Git et définissez les variables d'environnement. Créer un référentiel : utilisez gitinit pour créer un référentiel local. Ajouter des fichiers : utilisez gitadd pour ajouter des fichiers à la zone de préparation. Valider les modifications : utilisez gitcommit pour valider les modifications de la zone de préparation vers le référentiel local. Dépôts de clonage intermédiaires (collaboration et contrôle de version) : utilisez gitclone pour cloner une copie locale à partir d'un référentiel distant. Branchement et fusion : utilisez des branches pour créer des copies isolées de votre code

See all articles