Nogisaka 46 Ich habe das Bild des Blogs durch Scraping mit Python gespeichert. Ich habe die erste Seite von Midsummer Akimoto abgekratzt.
scraping.py
import requests
import urllib.request
import os
from bs4 import BeautifulSoup
def scraping():
#Mitglieds-URL
member_name = "manatsu.akimoto"
url = "http://blog.nogizaka46.com/" + member_name + "/"
#Ordner erstellen
if not os.path.isdir(member_name): # ”member_Wenn es keinen "Namen" -Ordner gibt
print("Ordner erstellen")
os.mkdir(member_name)
#Zum Zählen der Anzahl der gespeicherten Blätter
cnt = 0
#BeautifulSoup-Objektgenerierung
headers = {"User-Agent": "Mozilla/5.0"}
soup = BeautifulSoup(requests.get(
url, headers=headers).content, 'html.parser')
#Suchen Sie den HTML-Code, in dem sich das Bild befindet
for entry in soup.find_all("div", class_="entrybody"): #Holen Sie sich alle Eintragskörper
for img in entry.find_all("img"): #Holen Sie sich alle img
cnt += 1
urllib.request.urlretrieve(
img.attrs["src"], "./" + member_name + "/" + member_name + "-" + str(cnt) + ".jpeg ")
print("das Bild" + str(cnt) + "Ich habe ein Blatt gespeichert.")
if __name__ == '__main__':
scraping()
Da der Name des Mitglieds als URL verwendet wird, gebe ich den Namen des Mitglieds, das ich erhalten möchte, in Mitgliedsname ein.
member_name = "manatsu.akimoto"
url = "http://blog.nogizaka46.com/" + member_name + "/"
Auf der folgenden Website finden Sie eine leicht verständliche Erklärung. Referenzseite: https://python.civic-apps.com/beautifulsoup4-selector/
Mit Blick auf das HTML, aus dem der Blog besteht, Das div-Tag des Klassennamens "entrybody" enthält einen Text. Das img-Tag enthält ein Bild. Speichern Sie es daher in einem Ordner, sobald Sie es finden.
for entry in soup.find_all("div", class_="entrybody"):#Holen Sie sich alle Eintragskörper
for img in entry.find_all("img"):#Holen Sie sich alle img
cnt += 1
urllib.request.urlretrieve(img.attrs["src"], "./" + member_name + "/" + member_name + "-" + str(cnt) + ".jpeg ")
Ordner erstellen
Ich habe 22 Bilder gespeichert.
Recommended Posts