我目前正在使用selenium从chrome浏览器获取控制台日志。我的安装代码是这样的,它可以很好地获取控制台日志
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
# enable browser logging
d = DesiredCapabilities.CHROME
d['goog:loggingPrefs'] = { 'browser':'ALL' }
driver = webdriver.Chrome(desired_capabilities=d)
# load the desired webpage
driver.get(http://192.168.5.5)
# print messages
for entry in driver.get_log('browser'):
print(entry)
问题是entry
是一个包含Object字符串的字典。我无法访问此对象内部的内容。在一个真实的的浏览器中,我可以扩展这些对象,并查看更多的信息,这些信息通常是以字典的形式出现的。我如何在python中访问这些控制台日志对象,就像我在浏览器上一样?如果在 selenium 中不可能,它不必通过 selenium 。
编辑:
输入的输出示例:
{'level': 'INFO', 'message': 'http://192.168.5.5/app.e52b3dcc.bundle.js 58:31633 "[END REQUEST]: Response:" Object Object', 'source': 'console-api', 'timestamp': 1663609942539}
在浏览器中展开的对象的示例(复制和粘贴在这里看起来不太好,但你明白了):
```END REQUEST]: Response:
Object
data1
:
"SOMEPIECEOFDATA"
response
:
{moreData: {…}, status: 1, type: 'response'}
[[Prototype]]
:
Object
1条答案
按热度按时间mtb9vblg1#
你的代码基本上是有效的。以这个页面和你的问题为例:
终端结果:
也许您需要研究日志记录过程本身?