什么是BasicAuth
在Pythonselenium中,如果出现了BasicAuth认证弹框,那么我们要如何后续处理呢?首先需要了解什么是BasicAuth。

HTTP基本认证是一种最原始的认证方式,就像两个陌生人之间进行的暗号认证一样。例如,当客户端请求服务器的资源时,服务器会返回一个401状态码告知客户端需要使用BasicAuth方式进行认证。客户端再次请求时需要携带对应的用户名和密码,将认证信息放在请求头的Authorization中,格式为“用户名:密码的base64形式”,这样服务器就能够校验客户端的认证信息了。
selenium处理思路
因为BasicAuth非常像弹出框,首先我们想到的处理思路是alert处理模块。但是代码会报错提示找不到alert警告框,所以需要加上延迟。然而,问题依旧,因为当前这个弹框出现后,是无法元素定位的,因为它不是HTML,而是浏览器的原生弹框。所以我们不能使用这种方式进行处理。
接下来我们想到使用HTTP协议中的账号密码进行认证,但这种方式并不常用。可以在请求URL中携带账号密码信息,格式为“http://username:password@host:port/path/queryparameter”。
小编小结
相比于alert处理模块,使用基本认证的方式可以更好地处理BasicAuth认证弹出框。需要注意的是,在URL中携带账号密码信息并不常用,如果应用程序使用安全加密属性,这种方式可能存在一些安全问题。因此,我们需要在具体应用场景中进行判断,根据实际情况选择最合适的处理方式。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/7384.html
