Cet article est principalement une traduction de «Scrapely».
J'ai vérifié ce que c'était en déplaçant le contenu écrit dans README.
Si vous voulez voir le contenu approximatif en __secondes __, vous devriez lire à la fois Scrapely
et Summary
dans la section de cet article.
Une bibliothèque pour extraire des données structurées à partir de pages HTML. Étant donné un exemple de page Web et les données à extraire, créez un analyseur pour toutes les pages similaires.
«Les données sont extraites à l'aide de l'algorithme appelé Instance Based Learning» ^ 1. ^ 2
Installation
Scrapely works in Python 2.7 or 3.3+. It requires numpy and w3lib Python packages.
pip install scrapely
$ python -m scrapely.tool myscraper.json
scrapely> help
ocumented commands (type help <topic>):
========================================
a annotate ls s ta
add_template del_template ls_annotations scrape td
al help ls_templates t tl
scrapely>
L'utilisation de scrapely.tool est la suivante
python -m scrapely.tool <scraper_file> [command arg ...]
<fichier_scraper>
est le nom du fichier qui stocke les informations du modèle.
Les commandes fournies telles que ʻaet
ta sont des commandes d'alias telles que ʻannotate
ʻadd_template`, respectivement.
Nom de la commande | La description |
---|---|
add_template | add_template {url} [--encoding ENCODING] - (alias: ta) |
annotate | annotate {template_id} {data} [-n number] [-f field]- add or test annotation (aliases: a, t) |
del_template | del_template {template_id} - delete template (alias: td) |
ls_annotations | ls_annotations {template} - list annotations (alias: al) |
ls_templates | list templates (aliases: ls, tl) |
scrape | scrape {url} - scrape url (alias: s) |
scrapely> add_template http://pypi.python.org/pypi/w3lib/1.1
[0] http://pypi.python.org/pypi/w3lib/1.1
scrapely> ls_templates
[0] http://pypi.python.org/pypi/w3lib/1.1
scrapely> annotate 0 "w3lib 1.1"
[0] '<h1>w3lib 1.1</h1>'
[1] '<title>Python Package Index : w3lib 1.1</title>'
J'ai deux éléments avec la commande ci-dessus
scrapely> annotate 0 "w3lib 1.1" -n 0
[0] '<h1>w3lib 1.1</h1>'
scrapely> annotate 0 "w3lib 1.1" -n 0 -f name
[new](name) '<h1>w3lib 1.1</h1>'
scrapely> annotate 0 "Scrapy project" -n 0 -f author
[new] '<span>Scrapy project</span>'
scrapely> ls_annotations 0
[0-0](name) '<h1>w3lib 1.1</h1>'
[0-1](author) '<span>Scrapy project</span>'
scrapely> scrape http://pypi.python.org/pypi/Django/1.3
[{'author': ['Django Software Foundation'], 'name': ['Django 1.3']}]
Scrapy
est un framework d'application pour créer un robot d'exploration Web,
Scrapely
est une bibliothèque pour extraire des données structurées à partir de pages HTML.
«Scrapely» ressemble plus à BeautifulSoup ou lxml qu'à «Scrapy». ^ 3
Dans le scraping de site normal, vous écrivez une petite spécification de sélecteur
,
Dans Scrapely, il était possible de gratter des pages similaires en "spécifiant l'URL d'exemple" et "en spécifiant les données d'exemple".
Il y avait un service (open source) qui permettait de gratter des sites même par des personnes sans connaissance des programmes utilisant cette caractéristique. [^ 4]
C'était un résumé (impression) que je vois.
C'était le vendredi I / O d'aujourd'hui. Chez Wamuu Co., Ltd., chaque vendredi est une journée pour travailler sur ce qui vous intéresse et produire les résultats d'une manière ou d'une autre. Merci beaucoup.
Recommended Posts