在 python 3 中使用弹出警报身份验证抓取网页

Posted

技术标签:

【中文标题】在 python 3 中使用弹出警报身份验证抓取网页【英文标题】:Scraping a webpage with a pop up alert auth in python 3 【发布时间】:2021-10-31 12:34:57 【问题描述】:

我一直在尝试使用 python 3 抓取这个web page,其中登录就像一个弹出警报,你可以看到它here,我尝试使用基本身份验证(https://(用户名):( password)@(url)), mechanize 和 ntlm-auth 不成功,或者我做错了,我需要一个方法来做,希望有人能帮我解决这个问题...

使用 ntlm-auth 我没有收到任何错误,但响应就像没有身份验证的页面,这是我的代码的一部分:

from requests_ntlm import HttpNtlmAuth
import requests as rq

username = 'username'
password = 'password'    

url_prod = 'http://www2.deltron.com.pe/modulos/productos/items/producto.php?item_number=NBHP2B125LA'

sess = rq.Session()
sess.auth = HttpNtlmAuth(username, password)
resp = sess.get(url_prod)

print(resp, resp.text)

【问题讨论】:

【参考方案1】:

我在另一个站点上使用相同的识别弹出窗口遇到了同样的问题,并通过请求的基本身份验证解决了它

from requests.auth import HTTPBasicAuth

requests.get('https://api.github.com/user', auth=HTTPBasicAuth('user', 'pass'))

https://docs.python-requests.org/en/latest/user/authentication/

【讨论】:

以上是关于在 python 3 中使用弹出警报身份验证抓取网页的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Kivy 应用程序启动时满足特定条件时自动弹出警报

在使用应用程序期间失去可达性连接时弹出警报(IOS xcode swift)

如何在后台没有任何活动的情况下弹出警报消息?

收到推送通知且应用程序在前台时如何防止弹出警报

像弹出警报视图时一样暗淡的背景

弹出警报过早显示?