-1

如何使用 Selenium 打印网页的所有 html/css 标签:

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('http://seleniumhq.org/')

当我做:

print(browser),

它打印这个:

"<selenium.webdriver.firefox.webdriver.WebDriver (session="ce01359c-03e4-499d-a3fb-230bda9ac24c")>"

这是一个对象或变量还是一个列表/集合/元组/字典或它是什么?有人可以解释一下吗?

4

3 回答 3

3

你得到的结果是一个对象。在代码的开头,您选择调用此对象浏览器(也就是将其分配给变量)。然后,当您运行函数 browser.get() 时,它不会更改变量 browser 的内容,因此结果与您所在的网页无关。

于 2019-08-01T01:59:06.137 回答
0

你没看错。根据 New Session 的文档,New Session命令与端点节点创建一个新的 WebDriver 会话。

HTTP Method     URI Template
POST            /session

根据远程端步骤,整个过程完全取决于实现,但通常需要跟踪上游远程端的sessionId、 和URLURL prefix此外,

  • 会话 id 是生成 UUID 的结果。

  • 会话是会话 ID 为会话 ID 的新会话。

因此,作为对象浏览器会打印以下内容:class selenium.webdriver.firefox.webdriver.WebDriver()

"<selenium.webdriver.firefox.webdriver.WebDriver (session="ce01359c-03e4-499d-a3fb-230bda9ac24c")>"

您可以在 Webdrivers返回的值中找到相关讨论

于 2019-08-01T10:24:44.850 回答
0

您应该查看文档,特别是此页面,因为它提供了很好的介绍。如果您通过该解释工作,您应该对 API 的工作原理有一个很好的(基本)理解。附加章节可以填补关于在页面中定位元素的细节方面的空白。

另一方面,如果您所做的只是抓取 HTML,我建议您看看Beautiful Soup

于 2019-08-01T02:10:54.367 回答