Seite 1 von 1

Web Crawler mit Scrapy bleibt leer!

Verfasst: Donnerstag 22. April 2021, 07:57
von PhilDE2000
Schönen guten Tag zusammen!

ich arbeite momentan an einem Web Crawler für einen Kumpel von mir der die Steam Preise für bestimmte Items sich ziehen soll...

Aber mit folgendem Code:

Code: Alles auswählen

import requests
from bs4 import BeautifulSoup

url = "https://steamcommunity.com/market/listings/252490/Blackout%20Vest"

response = requests.get(url)

html = BeautifulSoup(response.text, "html.parser")

buyPrice = html.find_all("span", class_="market_commodity_orders_header_promote")

allBuyPrices = list()

for price in buyPrice:
    allBuyPrices.append(price.text)

print(allBuyPrices)
bleibt das Array immer leer... Hat jemand eine Idee woran das liegen kann? :/

Danke!

Re: Web Crawler mit Scrapy bleibt leer!

Verfasst: Donnerstag 22. April 2021, 11:52
von Dennis89
Hallo,

wenn du keine Fehlermeldungen bekommst würde ich mal schauen an was die Namen den gebunden werden, also
print(buyPrice)
print(price)
print(price.text)

Dann kannst du die Ausgaben mit deinen Erwartungen vergleichen, eventuell findest du so den Fehler.

Zum Code kann ich dir sonst leider nicht viel sagen, außer dass du dich nicht an die Namenskonvektionen von Python gehalten hast. Man schreibt alle Namen klein_mit_unterstrich, Ausnahmen sind Konstanten, die schreibt man GANZ_GROSS und Klassen in CamelCase-Schreibweise.

Grüße
Dennis

Re: Web Crawler mit Scrapy bleibt leer!

Verfasst: Donnerstag 22. April 2021, 17:36
von __blackjack__
@PhilDE2000: Das liegt daran, dass es solche <span>-Elemente mit der Klasse nicht gibt. Die gibt es erst wenn der Browser auf der Seite JavaScript ausgeführt hat. Die Info wird HTML in einem JSON-Objekt nachgeladen.