gpt4 book ai didi

python - Scrapy 绕过带有表单例份验证的警报消息

转载 作者:太空宇宙 更新时间:2023-11-04 04:55:20 24 4
gpt4 key购买 nike

Scrapy是否可以爬取告警信息?

链接例如, http://domainhere/admin ,一旦在实际浏览器中加载,就会出现一 strip 有表单的警告消息,用于填写用户名和密码。

或者有没有一种方法可以检查警告消息中的表单以了解要填写哪些参数?

PS:我确实有这个网站的凭据,我只是想通过网络抓取来自动化流程。

谢谢。

最佳答案

为了实现这一点,我做了以下事情:

  1. 观察验证后需要什么数据才能继续访问该页面。
  2. 使用网络选项卡中的 Chrome 开发人员工具,我检查了请求 header 。经观察,需要授权。
  3. 为了验证第 2 步,我使用了 Postman。使用 Postman 中的 Authorization,Basic Auth 类型,填写用户名和密码将为 Authorization header 生成相同的值。发送 POST 请求后,它加载所需的页面并绕过身份验证。
  4. 在 Request Headers 下的 Authorization 具有相同的值,将值存储在 Scraper 类中。
  5. 使用带有 headers 参数的 scrapy.Request 函数。

代码:

import scrapy

class TestScraper(scrapy.Spider):
handle_httpstatus_list = [401]
name = "Test"
allowed_domains = ["xxx.xx.xx"]
start_urls = ["http://testdomain/test"]

auth = "Basic [Key Here]"

def parse(self, response):
return scrapy.Request(
"http://testdomain/test",
headers={'Authorization': self.auth},
callback=self.after_login
)

def after_login(self, response):
self.log(response.body)

现在,您可以在身份验证过程后抓取页面。

关于python - Scrapy 绕过带有表单例份验证的警报消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47193490/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com