Beautiful soup to prawdopodobnie Twój najlepszy zakład.
Jeśli potrzebujesz "obsługi JavaScript" w celu przechwytywania żądań Ajax, powinieneś również użyć przechwytywania (np. YATT), aby monitorować, jakie są te żądania, a następnie emulować/analizować je.
Jeśli potrzebujesz "obsługi JavaScript", aby móc zobaczyć, jaki jest wynik końcowy strony ze statycznym JavaScript, to moim pierwszym wyborem byłaby próba ustalenia, co JavaScript robi w sprawie: w zależności od przypadku (np. jeśli JavaScript robi coś w oparciu o jakiś Xml, po prostu parsuj bezpośrednio Xml)
Jeśli naprawdę chcesz "obsługi JavaScript" (jak chcesz zobaczyć, co jest po skryptach, html zostały uruchomione na stronie), wtedy prawdopodobnie będziesz musiał utworzyć instancję jakiejś kontroli przeglądarki, a następnie odczytać wynikowy html/dom z kontrolki przeglądarki po zakończeniu ładowania i parsować normalnie piękną zupę. To byłaby jednak moja ostatnia deska ratunku.
Wiele pomocnych odpowiedzi na podobne pytania tutaj: http://stackoverflow.com/search?q=scraping+python – 3zzy
Dokładny duplikat: http://stackoverflow.com/questions/2081586/web-scraping-with-python –
no not a exact duplicate. Ten wspomina o JavaScript, który wymaga innych narzędzi niż podczas pracy ze statycznym HTML. – hoju