如何在Selenium和Firefox中检索原始JSON数据? [重复]

问题描述 投票:0回答:1

如何使用Selenium和Firefox Webdriver从Web请求中获取原始JSON文本?

我正在尝试测试JSON API,并确认通过Firefox的Python Selenium接口返回了特定数据。如果我在Chrome中查看URL的页面源,则会看到类似以下内容:

{"id":10472}

但是,如果我在Selenium + Firefox中调用相同的URL并通过json_text = self.driver.page_source访问文档的源,则会得到:

<html platform="linux" class="theme-light" dir="ltr"><head><meta http-equiv="Content-Security-Policy" content="default-src 'none' ; script-src resource:; "><link rel="stylesheet" type="text/css" href="resource://devtools-client-jsonview/css/main.css"></head><body><div id="content"><div id="json">{"id":10472}</div></div><script src="resource://devtools-client-jsonview/lib/require.js" data-main="resource://devtools-client-jsonview/viewer-config.js"></script></body></html>

[似乎Firefox正在检测JSON内容类型,并尝试通过将其包装在精美的HTML UI中来“帮助”我。不幸的是,这使得很难从Selenium中以编程方式提取和验证JSON。如何禁用此功能?

python selenium firefox selenium-firefoxdriver
1个回答
0
投票

为什么不只用json找到WebElement

self.driver.find_element_by_id('json').text # {"id":10472}
© www.soinside.com 2019 - 2024. All rights reserved.