Python 如何实现 onclick/button 背后的 POST

2018-03-14 10:12:31 +08:00
 oIMOo

目前正在写一个方便自己进行预约的脚本,查找最满意时间等步骤已经完成,但是最后提交不知道该如何进行,特来求助。

真实环境步骤:

选定时间 (按钮) 代码:

<a class='dispo' type='button' href='javascript:void(0)' onclick='ajaxCall("ajax_form_status", "https://url")'>23:55</a>

点击时间后 POST 内容 (by Burp):

url=https%3A%2F%2Furl&some_data

点击确认后 POST 内容 (by Burp):

other_data

代码实现过程中,有如下困难:

附:代码使用 requests package。

谢谢

4943 次点击
所在节点    Python
16 条回复
limerence12138
2018-03-14 10:17:06 +08:00
这些 time 不应该都是时间戳嘛
manzhiyong
2018-03-14 10:24:26 +08:00
oIMOo
2018-03-14 10:30:23 +08:00
@ql936611560

这点确实,太晚脑子不转了……

int(time.time() * 1000) 可以实现模拟,所以已经把这点从原文里删掉了。

谢谢。
oIMOo
2018-03-14 10:34:15 +08:00
@manzhiyong

这个网站不错,谢谢,收藏了。

不过没有 URL 的 POST 这里面没有提到呀。

我看有人使用 from selenium import webdriver 实现,不过想知道能不能通过 requests 的 post 实现,毕竟我不是要下载文件。
Yourshell
2018-03-14 10:37:28 +08:00
没 url 网页是怎么 post 的?
oIMOo
2018-03-14 10:39:28 +08:00
@Yourshell Burp 抓到的就是一些 Data。
locoz
2018-03-14 13:14:52 +08:00
没有加密环节的话直接看抓到的包就好了 没有 url 的话说明那一步本来就是废的
Va1n3R
2018-03-14 15:53:21 +08:00
都用 burp 了...黑阔吗?没有 URL 怎么 post 传输呢?直接用 burp 的 repeat 重放,一般只有一个请求才是重要的,没有必要模拟所有动作。
oIMOo
2018-03-14 16:24:30 +08:00
@locoz 用 Burp 测的时候,两次操作都需要 forward 才可以,drop 掉任何一个都不行。 我尝试将第二个也发往同样的 url,并没有成功预约到......
oIMOo
2018-03-14 16:25:57 +08:00
@Va1n3R 直接 firefox 抓的话,我没办法 drop 掉那个 post 包。

我在想会不会是要将两次的 data 一股脑一次发过去,晚上下班回家试试。
locoz
2018-03-15 07:57:48 +08:00
@oIMOo #9 方便的话可以直接把网站发出来
locoz
2018-03-15 07:58:25 +08:00
@oIMOo 看实际情况效率会高很多
oIMOo
2018-03-15 08:32:39 +08:00
oIMOo
2018-03-15 08:45:03 +08:00
@ql936611560 @manzhiyong @Yourshell @locoz @Va1n3R

各位,我发出了两次详细的 Post 内容,求指导我想约的话,到底应该怎么 POST 呢?

谢谢
oIMOo
2018-03-15 09:23:37 +08:00
@ql936611560 @manzhiyong @Yourshell @locoz @Va1n3R

我突然意识到我被 data 里面的一个 url 弄晕了,实际两个都是有 POST 的 url 的……

我试着模拟了一下,暂时没有成功。

两层上面的 github 链接里面的 get_appointment 方程。 其它均测试过没有问题。

发了太多次链接,被警告了……
oIMOo
2018-03-16 01:03:25 +08:00
添加了临时方案,邮件通知提醒。

周末网上搜个护照试试真实 POST 是什么样子

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/437843

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX