爬虫处理payload请求

在爬取网站的时候经常遇到post请求,对于一般的form_data参数的就很好处理,是不是遇到过下面的这种payload形式呢?

像这种payload类型的网站,需要由特定的处理方式处理。

处理方法

import requests
import json
headers = {
    "Content-Type":"application/json;charset=UTF-8",
    "User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 11_2_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36",
}
payload_data = {"token": "", "pn": 20, "rn": 20, "sdt": "", "edt": "", "inc_wd": "", "exc_wd": "", "fields": "title",
        "cnum": "001", "sort": "{\"infodatepx\":\"0\"}", "ssort": "title", "cl": 200, "terminal": "",
        "condition": [{"fieldName": "categorynum", "likeType": 2, "equal": "003004002"}], "time": [
        {"fieldName": "infodatepx", "startTime": "2021-01-07 00:00:00",
         "endTime": "2021-04-07 23:59:59"}], "highlights": "title", "accuracy": "", "noParticiple": "1",
        "isBusiness": "1"}
url = "http://jsggzy.jszwfw.gov.cn/inteligentsearch/rest/inteligentSearch/getFullTextData"
resp = requests.post(url,headers=headers,data=json.dumps(payload_data))

与form_data的不同点是用json.dumps封装了一下

需要注意的点:如果是json格式,要在headers里加上"Content-Type":"application/json;charset=UTF-8"

还有一种处理方法。将payload_data改写成"token=''\npn=20\nrn=20\nsd="  这种形式,即参数之间加上\n,不需要json.dumps也能解决问题。

 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
爬虫中获取payload主要是为了在POST请求中传递参数。可以通过准备数据、参数筛选和装配等步骤来实现。首先,需要读取爬虫结果,获取参数信息。接下来,读取Fuzz字典,筛选出需要传递动态参数的URL,并根据传参方式分类为GET和POST。然后,逐个将payload添加到动态参数末尾,如果是GET方式,则拼接URL和参数。最后,将爬虫结果和处理后的动态参数信息装配到请求对象中,通过发送请求并查看响应信息来验证是否存在漏洞。在验证阶段,可以使用标记去重的方式,将已经测试过的动态参数添加到数组中,并在测试新的动态参数之前检查是否已存在于数组中。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python爬虫实现POST request payload形式的请求](https://download.csdn.net/download/weixin_38553648/12852917)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [爬虫处理payload请求](https://blog.csdn.net/qq_42583496/article/details/115479420)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [【毕设扫描器】【参数Fuzz】第一篇:数据的定义、读取和装配(爬虫数据和Payload数据)](https://blog.csdn.net/soldi_er/article/details/123954770)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值