Seite 1 von 1

Python Selenium um Daten aus dynamischer Website zu extrahieren

Verfasst: Freitag 29. März 2024, 18:25
von MaverickGE
Hi

ich versuche mit Selenium (Chrome webdriver) Daten von der Website https://dexscreener.com/ zu bekommen.
Im Prinzip möchte ich nur den Namen des obersten Eintrag als Text bekommen.
Die Filter und Reihenfolge sind bereits eingestellt also nicht Teil meines Problems.

Mit der folgenden Struktur habe ich diverse Versuche (By.XPATH, By.Name etc.) gemacht aber bekomme nur Fehler.
Ich bin komplett neu in Selenium unterwegs.


from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_experimental_option("debuggerAddress", "localhost:8989")
driver = webdriver.Chrome(options=options)

driver.get("https://dexscreener.com/")

table = driver.find_element(By.XPATH,"...")
print(..)



Könnte mir hier jemand helfen?
Vielen Dank!!!
Maverick

Re: Python Selenium um Daten aus dynamischer Website zu extrahieren

Verfasst: Freitag 29. März 2024, 20:48
von pillmuncher
Warum verwendest du nicht deren API? Das ist ein einfacher Aufruf zB. mit requests.

https://docs.dexscreener.com/api/reference
https://pypi.org/project/requests/

Re: Python Selenium um Daten aus dynamischer Website zu extrahieren

Verfasst: Samstag 30. März 2024, 14:56
von MaverickGE
Hi,

danke für die Antwort!
Ich möchte das ebenfalls für eine zweite Website (https://photon-sol.tinyastro.io/en/discover) machen und bin mir nicht sicher, ob das auch über http requests geht.
Glaube eher nicht. Die Chrome Extension Wappalyzer wirft mir für die zweite Website raus:

Security: Cloudflare Bot Management, HSTS
Programmiersprache: Ruby(50% sure)
Web Frameworks: Ruby on Rails(50% sure)
CDN: Cloudflare

Daher wollte ich es einheitlich mittels Python Selenium versuchen.

Re: Python Selenium um Daten aus dynamischer Website zu extrahieren

Verfasst: Samstag 30. März 2024, 15:19
von sparrow
Wenn du dir nicht sicher bist, solltest du sicher werden.
Indem du schaust, ob dort eine entsprechende API angeboten wird.
Beide Seiten sind hinter Cloudflare. Da mit Selenium etwas zu tun, könnte schwierig werden.