吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1648|回复: 17
收起左侧

[求助] JS,浏览器控制台模拟POST请求

[复制链接]
cqwcns 发表于 2022-11-28 15:46
最近在研究数据爬取,如果通过python、uibot等方式发起POST请求,很难通过登录图形验证等限制。
今天有一个新思路,就是先在浏览器完成登录,再在浏览器控制台执行JS发起Post请求,这样可以利用浏览器的鉴权。


马上付诸行动测速一下。
浏览器控制台JS代码:
[JavaScript] 纯文本查看 复制代码
$.post("http://XX.XXXX.net:27001/api/tasklist/plugin/order-plugin/variables/66928815767126", {"archived": true, "names": ["isGigabit", "addrLevel", "twoAddrName", "maintainMode", "fiveAddrId", "fiveAddrName", "hcoverMode", "addrId", "accType", "resourceType", "addrLevelType", "addrName", "newAppointment", "PONserialNo", "SevenAddrMark"]});


返回异常:
responseJSON: {type: 'NullPointerException'}
responseText: "{\"type\":\"NullPointerException\"}"

aaa.png

我再看一下请求情况:
发送的请求负载异常,names字段,明明传入的是一个数组。
实际请求时却是错乱的,具体见图。
bbb.png

所以,如果我想再浏览器控制台来执行POST请求,应该怎么写?我不知道错在哪里,请各位大佬指教,感谢。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

tomhex 发表于 2022-11-28 15:47
web端的技术了解的不多,学习一下
咬字分开念 发表于 2022-11-28 15:49


爬虫遇到跨域,js是搞不定的,还得后台跨域抓取

免费评分

参与人数 1吾爱币 +1 收起 理由
cqwcns + 1 谢谢@Thanks!

查看全部评分

Su、 发表于 2022-11-28 16:00
要手动改成name[0]=xxx,name[1]=xxx

免费评分

参与人数 1吾爱币 +1 收起 理由
cqwcns + 1 谢谢@Thanks!

查看全部评分

linguo2625469 发表于 2022-11-28 16:05
[JavaScript] 纯文本查看 复制代码
$.post("http://XX.XXXX.net:27001/api/tasklist/plugin/order-plugin/variables/66928815767126", {"archived": true, "names": JSON.stringify(["isGigabit", "addrLevel", "twoAddrName", "maintainMode", "fiveAddrId", "fiveAddrName", "hcoverMode", "addrId", "accType", "resourceType", "addrLevelType", "addrName", "newAppointment", "PONserialNo", "SevenAddrMark"])});


试试

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
cqwcns + 1 + 1 谢谢@Thanks!

查看全部评分

linguo2625469 发表于 2022-11-28 16:06
另外要注意数据格式 ajax默认表单发送 有可能你这个网站是json发送的

免费评分

参与人数 1热心值 +1 收起 理由
cqwcns + 1 谢谢@Thanks!

查看全部评分

 楼主| cqwcns 发表于 2022-11-28 16:12
linguo2625469 发表于 2022-11-28 16:05
[mw_shl_code=javascript,true]$.post("http://XX.XXXX.net:27001/api/tasklist/plugin/order-plugin/varia ...

看到大佬的头像,我就知道问题已经解决了
 楼主| cqwcns 发表于 2022-11-28 16:17
linguo2625469 发表于 2022-11-28 16:05
[mw_shl_code=javascript,true]$.post("http://XX.XXXX.net:27001/api/tasklist/plugin/order-plugin/varia ...

大佬,负载的类型Raw text是什么意思?如果再请求中把负载设置成Raw text。
请求的负载是正确了,还是报错。
我留意到网站请求时,负载时Raw text类型的。我手动请求是form-data。
linguo2625469 发表于 2022-11-28 16:29
cqwcns 发表于 2022-11-28 16:17
大佬,负载的类型Raw text是什么意思?如果再请求中把负载设置成Raw text。
请求的负载是正确了,还是报 ...

不清楚 不知道你说的负载是什么 浏览器上某个选项吗
Frhvjhhv 发表于 2022-11-28 16:38
由于安全原因,谷歌浏览器不允许在控制台发起post请求。所以即使没有跨域也不行。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 03:40

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表