Normalerweise, wenn ich BeautifulSoup bin mit Daten zu extrahieren ein einfachesBeautiflsoup erstellen Suppe mit einem Snippet Seite Quelle
soup = BeautifulSoup(driver.page_source, "html5lib")
Einfach. Job erledigt.
Aber ich habe es mit einer Seite zu tun, die eine Los Daten darauf hat. Es ist bereits geladen, also muss ich mir keine Gedanken über die Ladezeiten machen, aber ich denke, der wahre Mörder ist, dass meine find_alls Seitenquelle durchsucht wird, die ich nicht ansehen muss.
Ich weiß, ich kann die Daten eingrenzen, die ich suche, sobald ich die Suppe gemacht habe, indem ich zu der Klasse usw. navigiert habe. Und das funktioniert, aber es ist ziemlich langsam. Tatsächlich ist das Erstellen der Suppe mit der Quelle page_source ziemlich langsam.
Ich habe Variationen anprobiert
Suppe = BeautifulSoup (driver.find_element_by_class_name ('Box'), "html5lib")
Aber ohne Erfolg. Ist es möglich, so etwas zu tun, ohne den Quellcode durchzusehen? Ich denke, in irgendeiner Form müsste es immer noch die Quelle laden, um nur die Klasse zu finden, die ich sehen möchte. Aber eine kleinere Suppe kann schneller heruntergeladen werden, nachdem sie heruntergeladen wurde.
Ich würde jemanden schätzen, der mir hier in die richtige Richtung zeigen kann.
TL; DR meine Suppe von page_source ist riesig braucht Zeit Navigieren durch Selen kann ich meine Suppe auf einen bestimmten Klassennamen oder etwas vor dem Navigieren beschränken.
Ah perfekt! Du hast keine Ahnung, wie viel besser du heute Abend mein Leben gemacht hast. Und ich gebe lxml, aber es neigt dazu, Dinge zu verpassen, die html5lib zu übernehmen scheint. – PoweredByCoffee