Python Scraping JavaScript mit Selen und Schöne Suppe

Ich versuche zu kratzen ein JavaScript-aktiviert die Seite mit BS und Selen.
Ich habe den folgenden code so weit. Es immer noch nicht irgendwie erkennen, die JavaScript (und gibt einen null-Wert). In diesem Fall bin ich versucht zu kratzen, die Facebook-Kommentare in den Boden. (Inspect element wird der Klasse als postText)

Vielen Dank für die Hilfe!

from selenium import webdriver  
from selenium.common.exceptions import NoSuchElementException  
from selenium.webdriver.common.keys import Keys  
import BeautifulSoup

browser = webdriver.Firefox()  
browser.get('http://techcrunch.com/2012/05/15/facebook-lightbox/')  
html_source = browser.page_source  
browser.quit()

soup = BeautifulSoup.BeautifulSoup(html_source)  
comments = soup("div", {"class":"postText"})  
print comments
  • Sie möchten möglicherweise versuchen Sie es ein warten Sie auf die Seite - werden Sie wahrscheinlich verlassen, bevor die Seite hat Zeit, um vollständig zu laden (denken Sie daran, es ist nur wie ein browser und Erfahrungen Latenz). In deinem Fall könnte man wahrscheinlich lösen, indem man einfach wartet für eine bestimmte Zeit, aber die elegantere Lösung(en) finden Sie bei seleniumhq.org/docs/04_webdriver_advanced.jsp#implicit-waits
  • Ich bin mir nicht sicher, ob das warten war die Frage, wie ich entfernt-browser.beenden() und das Programm ausgeführt. Es war kein Glück.
  • Das problem ist eigentlich die Linie vor - es ist be - page_source bevor es zu einer Quelle geladen werden 🙂
InformationsquelleAutor Jay Setti | 2013-01-25
Schreibe einen Kommentar