[PYTHON] Module de grattage "Gaspacho" qui peut être utilisé plus facilement que Beautiful Soup

Je voudrais vous présenter un module Python appelé gaspacho que j'ai récemment appris.

Qu'est-ce que le gaspacho

gaspacho est une "bibliothèque simple, rapide et moderne pour le web scraping".

gazpacho is a simple, fast, and modern web scraping library. The library is stable, actively maintained, and installed with zero dependencies. (https://pypi.org/project/gazpacho/)

Le nombre d'étoiles est encore mineur à 400, donc je pense qu'il est préférable de le garder pour un usage personnel.

mérite

Comment utiliser

Tout d'abord, installez le module.

pip install gazpacho

Je vais gratter et sortir le titre du livre à partir du site suivant présenté dans le tutoriel.

https://scrape.world/books

from gazpacho import get, Soup


#Obtenir du HTML basé sur l'URL spécifiée
html = get('https://scrape.world/books')

#Créer une instance pour l'analyse
soup = Soup(html)

#Obtenez les éléments dont vous avez besoin. Liste si plus d'un est trouvé[Soup]Retours (soupe pour single)
#Le premier argument est une balise HTML
#Le deuxième argument est la spécification de l'id et de la classe
#Si la troisième spécification permet une correspondance partielle
#Dans l'exemple, la classe est"book-"Parce que c'est"book-early"Etc. match
books = soup.find('div', {'class': 'book-'}, partial=True)

for book in books:
    name_header = book.find('h4')
    #Le champ de texte contient le contenu de la balise
    name = name_header.text
    print(name)

Résumé

Personnellement, je l'utilise correctement comme indiqué ci-dessous.

  1. grattage facile-> utiliser gaspacho
  2. Difficile avec le gaspacho (*) -> sélénium (chromedriver-library) Faites quelque chose avec Beautiful Soup

Le module lui-même de gaspacho est simple, je pense donc trouver le temps de le lire.

J'espère que plus de gens liront et utiliseront cet article!

Recommended Posts

Module de grattage "Gaspacho" qui peut être utilisé plus facilement que Beautiful Soup
J'ai fait un module qui peut être glitch facilement, mais je ne peux pas passer l'argument de entry_points
Un minuteur (ticker) qui peut être utilisé sur le terrain (peut être utilisé n'importe où)
Module standard Python utilisable en ligne de commande
Module de traitement du signal acoustique qui peut être utilisé avec Python-Sounddevice ASIO [Application]
Comment créer un bot Janken qui peut être facilement déplacé (commentaire)
Créez une application Web qui peut être facilement visualisée avec Plotly Dash
Python-Sound device Module de traitement du signal acoustique ASIO [Basic]
[Python] Gratter une table avec Beautiful Soup
Notes personnelles des opérations liées aux pandas qui peuvent être utilisées dans la pratique
Comment installer la bibliothèque Python qui peut être utilisée par les sociétés pharmaceutiques
Types de fichiers pouvant être utilisés avec Go
Fonctions pouvant être utilisées dans l'instruction for
Convertir des images du SDK FlyCapture en un formulaire pouvant être utilisé avec openCV
Notes sur les connaissances Python utilisables avec AtCoder
Enregistrement d'image ANT qui peut être utilisé en 5 minutes
[Django] À propos des utilisateurs pouvant être utilisés sur un modèle
J'ai écrit un module Ansible brut qui vous permet d'utiliser Virtualenv en installant Pythonz.
[Atcoder] [C ++] J'ai fait un outil d'automatisation de test qui peut être utilisé pendant le concours
Gratter avec une belle soupe
Goroutine (contrôle parallèle) utilisable sur le terrain
Goroutine utilisable sur le terrain (édition errgroup.Group)
Scripts pouvant être utilisés lors de l'utilisation de Bottle en Python
Implémentez un thread qui peut être suspendu en exploitant le rendement
Faisons un diagramme sur lequel on peut cliquer avec IPython
Comprendre les probabilités et les statistiques qui peuvent être utilisées pour la gestion des progrès avec un programme python
À propos du fait que le résumé de la torche peut être vraiment utilisé lors de la construction d'un modèle avec Pytorch