Das Scraping oder Crawlen einer großen Website kann eine große Menge an Daten erzeugen, die gespeichert werden müssen. Um Daten zu vermeiden, die dupliziert werden, kann es besser sein, mehrere Tabellen in einer Datenbank zu verwenden.
Hier zeige ich eine sehr einfache Möglichkeit, bedingte Logik mit Python-Code in einem Scrapy-Spider zu verwenden, um Daten basierend auf den gescrapten Werten an verschiedene Tabellen zu senden. Dies ist als Überblick für jeden gedacht, der bereits Web Scraping zu einer sqlite3-Datenbank oder ähnlichem betrachtet hat.
🟢 Die Gefahren der Verwendung von CSV (z. B. Excel) werden ebenfalls diskutiert!
Ziel dieses Videos ist es, dir die Inspiration zu geben, die Möglichkeiten der Verwendung einer Datenbank, mehrerer Tabellen und Web Scraping auf eine strukturiertere Weise zu erkunden und zu überlegen, was der endgültige Zweck deiner Daten sein wird und wie sie verwendet/abgefragt werden könnten.
Wenn dies von Interesse war, wird der nächste Schritt sein, SQL zu lernen und Tabellen zu erstellen.
Danke fürs Zuschauen.
Dr. Pi.
'Illegitimi non carborundum'
def parse_item(self, response):
wsearch = ['train','murder']
lstitle = []
x = response.url
booktitle = str(x)
booktitle = booktitle.split("/")[4]
booktitle = booktitle.split("_")[0]
[lstitle.append(i) for i in booktitle.split("-")]
check = any(item in wsearch for item in lstitle)
if check is True:
myquery = """INSERT INTO links (url,book)
values(%s,%s)
"""
val=(x,booktitle)
cursor.execute(myquery,val)
mydb.commit()
else:
myquery = """INSERT INTO links2 (url,book)
values(%s,%s)
"""
val=(x,booktitle)
cursor.execute(myquery,val)
mydb.commit()
#webscraping #sqlite #datenbank