用表单身份验证绕过警报消息

2024-10-01 07:25:03 发布

您现在位置:Python中文网/ 问答频道 /正文

Scrapy有可能抓取警报信息吗?在

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

或者,有没有一种方法可以检查警报消息中的表单,从而知道要填写哪些参数?在

PS:我确实有这个网站的证书,我只想通过网络爬网自动化进程。在

谢谢。在


Tags: 方法信息http消息警告密码表单参数
1条回答
网友
1楼 · 发布于 2024-10-01 07:25:03

为了实现这一目标,我做了以下工作:

  1. 观察了身份验证后继续页面所需的数据。在
  2. 使用Chrome的开发者工具Network标签,我检查了请求头。需经授权方可观察。在
  3. 为了验证步骤2,我使用了Postman。使用Postman中的授权,基本身份验证类型,填充用户名和密码将为授权头生成相同的值。在发送POST请求后,它加载所需的页面并绕过身份验证。在
  4. 对于请求头下的授权具有相同的值,请将该值存储在Scraper类中。在
  5. 使用恶心。请求具有headers参数的函数。在

代码:

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)

现在,您可以在身份验证过程后对页面进行爬网。在

相关问题 更多 >