使用无头浏览器设置检索openid承载令牌

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

使用OkHttp3,我很开心地刮了一个网站一段时间。但是,网站的某些组件已升级,现在正在使用其他OpenID承载身份验证。

我有99.9%的肯定是由于该承载令牌导致我的请求失败,因为当我使用Chrome开发工具进行检查时,我看到仅针对这些部分弹出承载令牌。此外,几个请求请求将链接到以“ .well-known / openid-configuration”结尾的链接。另外,当我在我的OkHttp3代码中通过浏览器对承载令牌进行硬编码时,一切正常。没有代码,我会收到一条401未经授权的消息。

我发现我的浏览器仿真距离实际情况还不够接近,因此我决定使用无头浏览器设置来执行一些javascript调用。由于我使用Java,因此我使用了HtmlUnit。使用该工具,我可以很快达到可以成功地刮擦网站的某些部分的功能(就像使用OkHttp3一样),但是由于新更新的部分而再次失败。我检查了一下,但是在任何响应中(在标题或cookie中都找不到)承载令牌。

这种方法(使用无头浏览器)是否有可能起作用?或者也许我可以检查其他方法。

web-scraping openid htmlunit
1个回答
0
投票

我通过使用Htmlunit和java进行刮擦来尝试相同的事情。我无法阅读HTMLUnit的按钮ID,因为它来自Dom树。试图给延迟,但似乎无法正常工作。我正在使用Azure AD和ADFS进行身份验证。感谢帮助。

© www.soinside.com 2019 - 2024. All rights reserved.