【发布时间】:2016-07-30 01:31:40
【问题描述】:
通常每当我使用 Beautifulsoup 简单地提取数据时
soup = BeautifulSoup(driver.page_source, "html5lib")
简单。任务完成。
但我正在处理一个有大量数据的网站。它已经加载了,所以我不需要担心加载时间,但我认为真正的杀手是让我的 find_all 浏览我不需要查看的页面源。
我知道我可以通过导航到班级等来缩小我正在寻找的数据的范围。这很有效,但速度很慢。事实上,即使使用 page_source 创建汤也很慢。
我尝试过各种变化
soup = BeautifulSoup(driver.find_element_by_class_name('box'), "html5lib")
但没有成功。是否可以在不查看所有源代码的情况下做这样的事情?我想以某种形式它仍然需要加载源代码才能找到我想要它查看的类。但较小的汤在下载后可能会更快浏览。
如果有人能在这里为我指明正确的方向,我将不胜感激。
TL;DR 我的来自 page_source 的汤是巨大的需要时间来使用 selenium 导航我可以在导航之前将我的汤限制为某个类名或其他内容吗?
【问题讨论】:
标签: python selenium web-scraping beautifulsoup