Beautiful soup все еще, вероятно, лучший выбор.
Если вам нужна «поддержка JavaScript» для перехвата запросов Ajax, вы должны также использовать какой-то захват (например, YATT), чтобы отслеживать, каковы эти запросы, а затем имитировать/разбирать их.
Если вам нужна «поддержка JavaScript», чтобы узнать, что такое конечный результат страницы со статическим JavaScript, тогда мой первый выбор - попытаться выяснить, что делает JavaScript на case- (например, если JavaScript делает что-то на основе некоторого Xml, то просто просто проанализируйте Xml прямо)
Если вы действительно хотите «поддержку JavaScript» (так как вы хотите увидеть, что HTML-код после скриптов были запущены на странице), тогда я думаю, что вам, вероятно, понадобится создать экземпляр некоторого элемента управления браузером, а затем прочитать полученный html/dom обратно из элемента управления браузера после его полной загрузки и разобрать его обычно с красивым супом. Это было бы моим последним прибежищем.
Многие полезные ответы на подобные вопросы здесь: HTTP://stackoverflow.com/search?q=scraping+python – 3zzy
Точный дубликат: http://stackoverflow.com/questions/2081586/web-scraping-with-python –
Нет не точного дубликата. В этом упоминается JavaScript, который требует разных инструментов, чем при работе со статическим HTML. – hoju