Ceci est un mémo d'outils qui peuvent être utilisés lors du scraping avec Python.
Le moyen le plus simple d'accéder au Web avec Python est d'utiliser des requests
. Vous pouvez l'installer avec pip.
Pour GET et POST, l'utilisation de requests.get et requests.post est généralement suffisante.
Installation
$ pip install requests
Veuillez consulter ici pour plus de détails. http://requests-docs-ja.readthedocs.org/en/latest/
BeautifulSoup4 est un bon moyen d'analyser le HTML.
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup('<div><h1 id="test">TEST</h1></div>', 'html')
>>> soup.select_one('div h1#test').text
'TEST'
Les caractères de la balise sont soup.text
, et les attributs sont accessibles avec soup ['id']
(où id est le nom de l'attribut).
Méthode fréquemment utilisée de l'objet BeautifulSoup
--BeautifulSoup.find () -> Rechercher des balises et renvoyer la première balise hit --BeautifulSoup.find_all () -> Recherche de balises et retourne une liste de balises de hit --BeautifulSoup.find_previous () -> Renvoie la balise précédente --BeautifulSoup.find_next () -> Renvoie la balise suivante --BeautifulSoup.find_parent () -> Renvoie la balise parent --BeautifulSoup.select () -> renvoie une liste de balises avec le sélecteur css --BeautifulSoup.select_one () -> Recherche avec le sélecteur css et retourne le premier hit tag
Veuillez consulter ici pour plus de détails. http://kondou.com/BS4/
CSV est un fichier dans un format séparé par des virgules. Vous pouvez utiliser le module csv. En savoir plus sur le module csv ici. http://docs.python.jp/3.4/library/csv.html
import csv
with open('some.csv', 'wb') as f:
writer = csv.writer(f)
writer.writerows(someiterable)
import csv
with open('some.csv', 'rb') as f:
reader = csv.reader(f)
for row in reader:
print row
Le format JSON est également un format couramment utilisé. Utilisez le module standard module json
.
>>> import json
>>> json.dumps([1, 2, 3, 4])
'[1, 2, 3, 4]'
>>> json.loads('[1, 2, 3, 4]')
[1, 2, 3, 4]
>>> json.dumps({'aho': 1, 'ajo': 2})
'{"aho": 1, "aro": 2}'
>>> json.loads('{"aho": 1, "ajo": 2}')
{u'aho': 1, u'aro': 2}
--json.dumps () -> Faire de l'objet une chaîne JSON --json.loads () -> Faire de la chaîne JSON un objet --json.dump () -> Transforme l'objet en une chaîne JSON et l'écris dans un fichier --json.load () -> Lire la chaîne JSON dans le fichier et en faire un objet
Veuillez consulter ici pour plus de détails. http://docs.python.jp/3.4/library/json.html
J'en ai préparé comme échantillon de grattage. se il vous plaît se référer. Cependant, il existe également des sites généraux, alors veuillez ne pas lancer de demandes. Même si vous faites une erreur, vous ne pouvez pas simplement tourner la boucle.
--https: //teratail.com/ Ce pourrait être une bonne idée de tondre l'entrée sur la première page. --http: //isitchristmas.com/ Jugement de Noël (en temps opportun) --https: //data.nasa.gov/developer Les données de la NASA sont disponibles, il peut donc être intéressant de les consulter.
Il existe de nombreux autres sites qui ont l'air bien ...
Recommended Posts