Versuchen Sie, mithilfe der Python-Anforderungsbibliothek eine Webseite und eine JSON-Datei abzurufen

Überblick

Ich studiere mit Bezug auf O'Reilly Japans "Datenvisualisierung beginnend mit Python und JavaScript".

Abrufen von Webdaten mithilfe der Anforderungsbibliothek

Pythons "Requests" ist eine Bibliothek, die die Handhabung von HTTP-Interaktionen in Python erleichtert.

Vorbereitungen

Installieren Sie Anforderungen

pip install requests
pip install --upgrade ndg-httpsclient

Beispiel für die Verwendung der Anforderungsbibliothek

Wikipedia-Seite herunterladen (HTML-Seite und Inline-JavaScript herunterladen)

>>> import requests
>>> response = requests.get("https://ja.wikipedia.org/wiki/Python");
>>> 
>>> #Ruft eine Liste der Attribute des responsep-Objekts ab
>>> dir(response)
['__attrs__', '__bool__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_content', '_content_consumed', '_next', 'apparent_encoding', 'close', 'connection', 'content', 'cookies', 'elapsed', 'encoding', 'headers', 'history', 'is_permanent_redirect', 'is_redirect', 'iter_content', 'iter_lines', 'json', 'links', 'next', 'ok', 'raise_for_status', 'raw', 'reason', 'request', 'status_code', 'text', 'url']
>>>
>>> #Ruft den HTTP-Statuscode vom Antwortobjekt ab
>>> response.status_code
200
>>>
>>> #Sie können die HTML-Seite und Inline-JavaScript abrufen, indem Sie die Texteigenschaft des Antwortobjekts abrufen
>>> response.text
'<!DOCTYPE html>\n<html class="client-nojs" lang="ja" dir="ltr">\n<head>\n<meta charset="UTF-8"/>\n<title>Python - Wikipedia</title>\n<script>document.documentElement.className = document.documentElement.className.replace( /(^|\\s)client-nojs(\\s|$)/, "$1client-js$2" );</script>\n<script>(window.RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Python","wgTitle":"Python","wgCurRevisionId":65321720,"wgRevisionId":65321720,"wgArticleId":993,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["Programmiersprache","Objektorientierte Sprache","Skriptsprache","Open Source","Python"],"wgBreakFrames
...

Daten im JSON-Format abrufen

>>> import requests
>>> response = requests.get("https://www.oreilly.co.jp/books/9784873118086/biblio.json");
>>> 
>>> #JSON-Daten abrufen
>>> data = response.json()
>>> data
{'title': 'Datenvisualisierung beginnend mit Python und JavaScript', 'picture_large': 'http://www.oreilly.co.jp/books/images/picture_large978-4-87311-808-6.jpeg', 'picture': 'http://www.oreilly.co.jp/books/images/picture978-4-87311-808-6.gif', 'picture_small': 'http://www.oreilly.co.jp/books/images/picture_small978-4-87311-808-6.gif', 'authors': ['Kyran Dale\von u3000', 'Takeshi Shimada\übersetzt von u3000', 'Tetsuya Kinoshita\u3000 Übersetzung'], 'released': '2017-08-25', 'pages': 500, 'price': 4104, 'ebook_price': 3283, 'original': 'Data Visulalization with Python and JavaScript', 'original_url': 'http://shop.oreilly.com/product/0636920037057.do', 'isbn': '978-4-87311-808-6'}
>>> 
>>> #Schlüsselwert abrufen
>>> data.keys()
dict_keys(['title', 'picture_large', 'picture', 'picture_small', 'authors', 'released', 'pages', 'price', 'ebook_price', 'original', 'original_url', 'isbn'])
>>> 
>>> #Titel holen
>>> data["title"]
'Datenvisualisierung beginnend mit Python und JavaScript'

Referenz

Datenvisualisierung beginnend mit Python und JavaScript https://www.oreilly.co.jp/books/9784873118086/

Anfragen: HTTP für Menschen http://requests-docs-ja.readthedocs.io/en/latest/user/quickstart/     Nächstes Mal werden wir untersuchen, wie Daten aus der Web-API verwendet werden.

Recommended Posts

Versuchen Sie, mithilfe der Python-Anforderungsbibliothek eine Webseite und eine JSON-Datei abzurufen
Ich habe versucht, die Informationen des Webs mit "Requests" und "lxml" abzurufen.
Versuchen Sie, eine komprimierte Datei mit Python und zlib zu erstellen
(Python) Versuchen Sie, eine Webanwendung mit Django zu entwickeln
Jedes Mal, wenn ich versuche, eine CSV-Datei mit Pandas zu lesen, wird ein numpy-Fehler angezeigt.
Holen Sie sich ein Bild von einer Webseite und ändern Sie die Größe
Holen Sie sich Python-Webseite, Zeichenkodierung und Anzeige
Versuchen Sie, Statistiken mit e-Stat abzurufen
Verarbeiten Sie das Ausführungsergebnis von Splunk mit Python und speichern Sie es in einer Datei
Versuchen Sie es mit APSW, einer Python-Bibliothek, die SQLite ernst nehmen kann
Versuchen Sie es mit Platypus, einer Mehrzweckoptimierungsbibliothek
So suchen Sie mit Pythons Astroquery und erhalten passende Bilder mit Skyview
Ich möchte eine Webanwendung mit React und Python Flask erstellen
Ich möchte eine Datei auf tkinter ablegen und ihren Pfad abrufen [Tkinter DnD2]
WEB Scraping mit Python und versuchen, aus Bewertungen eine Wortwolke zu machen
Erstellen Sie eine Web-App, die PDF mit Flask und PyPDF2 in Text konvertiert
Probieren Sie jetzt Web Scraping aus und erhalten Sie Lotterie-6-Daten
So erstellen Sie eine JSON-Datei in Python
Erstellen Sie eine Webmap mit Python und GDAL
Analysieren Sie eine JSON-Zeichenfolge, die in eine Datei in Python geschrieben wurde
Abrufen des Dateinamens in einem Ordner mithilfe von glob
Erstellt ein Modul zur Überwachung von Datei- und URL-Aktualisierungen
Versuchen Sie, mit Tkinter in Python dynamisch einen Checkbutton zu erstellen
Python-Skript, das eine JSON-Datei aus einer CSV-Datei erstellt
Geben Sie einen Binärspeicherauszug in Binärdatei und zurück in eine Binärdatei aus
Ich habe versucht, eine Bibliothek (Common Thread) zu verwenden, die die Verwendung des Python-Threading-Pakets vereinfacht
Versuchen Sie es mit dem Feed-Parser von Python.
Versuchen Sie es mit Pythons Tkinter
Versuchen Sie es mit GUI, PyQt in Python
Versuchen Sie, eine Excel-Datei mit Python (Pandas / XlsxWriter) zu betreiben
Versuchen Sie, eine Excel-Datei mit Python (Pandas / XlsxWriter) zu betreiben
Entwickelte eine Bibliothek, um die Kindle-Sammlungsliste in Python abzurufen
Versuchen Sie, ein Unterfenster mit PyQt5 und Python zu öffnen
Holen Sie sich eine globale IP und exportieren Sie sie in Google Spreadsheets
Versuchen Sie, ein neuronales Netzwerk in Python aufzubauen, ohne eine Bibliothek zu verwenden
Versuchen Sie, eine multimodale Verteilung mithilfe des EM-Algorithmus zu modellieren
[Einführung in Tensorflow] Verstehen Sie Tensorflow richtig und versuchen Sie, ein Modell zu erstellen
So erhalten Sie eine Liste mit Links von einer Seite aus Wikipedia
Versuchen Sie einfach, einen Webhook mit ngrok und Python zu erhalten
Beachten Sie, dass ich süchtig danach war, mit Pythons mysql.connector über eine Webanwendung auf die Datenbank zuzugreifen
[Python] So kratzen Sie eine lokale HTML-Datei und geben sie mit Beautiful Soup als CSV aus