此问题适用于Win10上的Python 3.6.3,bs4和Selenium 3.8。
我正在尝试使用动态内容抓取页面。我试图抓取的是数字和文本(例如,来自http://www.oddsportal.com)。以我的理解,使用请求+美丽的汤将无法完成任务,因为动态内容将被隐藏。因此,我必须使用其他工具,例如selenium webdriver。
然后,假设我仍将使用Selenium WebDriver,建议您忽略BeautifulSoup并坚持使用Selenium WebDriver功能,例如
elem = driver.find_element_by_name("q"))
还是使用selenium+美容汤被认为是更好的做法?
您对两条路线中的哪条路线会给我带来更便捷的功能有什么看法?
谢谢。
Beautifulsoup 是 Web爬网 的有力工具。它使用 urllib.request Python库。 urllib.request 从静态页面提取数据的功能非常强大。
Beautifulsoup
urllib.request
Selenium 是当前最广泛接受和最有效的 Web自动化 工具。Selenium支持与进行交互Dynamic Pages, Contents and Elements。
Selenium
Dynamic Pages, Contents and Elements
要创建一个健壮且高效的框架来抓取具有动态内容的页面,您必须将两者 Selenium 和 Beautifulsoup 框架都集成在一起。浏览动态元素并与之交互, Selenium 并高效地刮取内容 Beautifulsoup
下面是一个 example使用 Selenium 和 Beautifulsoup 用于 Scrapping
example
Scrapping