【问题标题】:Can beautiful soup also hit webpage events?美汤也能打网页事件吗?
【发布时间】:2012-12-18 07:39:17
【问题描述】:

Beautiful Soup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据。我将使用它来提取网页数据,但我没有找到任何方法来单击按钮,anchor label 在我的情况下用于页面导航。所以为此我必须使用任何其他或beautiful soup 具有我不知道的能力。

请给我建议!

【问题讨论】:

  • 我可以同时使用selenium and beautiful soup吗?

标签: selenium python-2.7 beautifulsoup selenium-webdriver


【解决方案1】:

回答你的标签/评论,是的,你可以一起使用它们(Selenium 和 BeautifulSoup),不,你不能直接使用 BeautifulSoup 来执行事件(点击等)。尽管我自己从未在相同的情况下将它们一起使用,但假设情况可能涉及使用 Selenium 通过特定路径导航到目标页面(即click() 这些选项,然后click() 按钮到下一页),然后使用 BeautifulSoup 读取 driver.page_source(其中 driver 是您创建的用于“驱动”浏览器的 Selenium 驱动程序)。由于driver.page_source 是页面的 HTML,您可以照常使用 BeautifulSoup,解析出您需要的任何信息。

简单示例:

from bs4 import BeautifulSoup
from selenium import webdriver

# Create your driver
driver = webdriver.Firefox()

# Get a page
driver.get('http://news.ycombinator.com')

# Feed the source to BeautifulSoup
soup = BeautifulSoup(driver.page_source)

print soup.title  # <title>Hacker News</title>

主要思想是,当您需要阅读页面的源代码时,您可以将driver.page_source 传递给BeautifulSoup 以便阅读您想要的任何内容。

【讨论】:

  • 感谢您的回复!现在我想知道如何嵌入这样的模块,一个用于使用selenium webdriver 进行网页导航,另一个用于使用beautiful soup 进行网页报废?这两个不同的.py 文件将如何在它们之间进行通信。我在这里有点困惑。在这里指导我理解。您可以以ADO 为例转到下一页或将值报废到Properties 部分下的文本文件中。如果可能的话,请在这里为我提供演示。
  • @CodeLover 当然,用一个非常简单的例子进行编辑。希望它有所帮助:)
  • 感谢您对帮助我的兴趣。有见识的人应该像你一样! :)
  • @CodeLover 哈完全没有问题,希望它能让你走上正轨——祝你好运!
猜你喜欢
  • 2018-08-12
  • 1970-01-01
  • 1970-01-01
  • 2018-10-15
  • 2021-03-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多