Ich weiß jetzt nicht, welche Datasets du brauchst, aber du wirst bestimmt fündig, wenn du danach suchst und es ein wenig bekannter ist (z.B. Autos oder Zahlen). Wenn du nicht fündig wirst, dann kannst du mein Script verwenden, welches ich dir kurz zusammengeschustert habe.
from selenium import webdriver
from bs4 import BeautifulSoup
import urllib.request
download = input("Welches Bild möchtest du herunterladen? ")
ammount = int(input("Wie viele Bilder möchtest du herunterladen? "))
site = 'https://www.google.com/search?tbm=isch&q='+download
driver = webdriver.Chrome(executable_path = r'Pfad zu der .exe datei\chromedriver.exe')
#chromedriver.exe ist ein externer Browserdriver, welcher für Chrome verwendet wird
#man kann ihn von der website: "https://chromedriver.chromium.org/downloads" herunterladen
#https://www.softwaretestinghelp.com/chromedriver-selenium/
driver.get(site)
driver.find_element("xpath","//span[text()='Alle akzeptieren']").click()
i = 1
boolean = True
while boolean:
soup = BeautifulSoup(driver.page_source, 'html.parser')
img_tags = soup.find_all("img", class_="rg_i")
for item in img_tags:
try:
urllib.request.urlretrieve(item['src'], r"Pfad wo die Bilder gespeichert werden sollen \{}.jpg".format(download)) #pfad, wo die bilder gespeichert werden sollen
i += 1
except Exception as e:
pass
if i > ammount:
boolean = False
break
driver.execute_script("window.scrollTo(0,document.body.scrollHeight);")
driver.close()
Diese Script macht, dass es auf Google Images geht und die ersten Bilder herunterladet. Ich würde trotzdem durch die Bilder gehen, da es immer sein kann, dass es Bilder gibt, welche nicht das Kriterium erfüllen (deshalb würde ich erst auf "richtige" Datasets zugreifen, bis man welche aus dem Web verwendet)
Ich hoffe ich konnte dir weiterhelfen und wenn du noch Fragen hast dann kannst du mich natürlich fragen.
LG