关于在用curl函数post网页数据时,遇上表单提交 type为submit 类型而且没有name和id时可能遇到的问题及其解决方法

curl函数库实现爬网页内容的链接在 http://www.cnblogs.com/linguanh/p/4292316.html

下面这个是没有name和id 标识的

<input type="submit" value="OnClick"/>

这种类型,在填写完信息后,我们一般需要点一个按钮去触发提交事件。

我之前介绍的用curl去获取网页cookie 的文章中 出现过的一个 变量 data,即要传送过去的 数据,

这个数据一般是网站的登陆账号和密码,对应着输入框的name,下面我举一个例子。

<input name="UserName" id="U" type="text" />

<input name="PassWord" id="P" type="PassWord" />

<input name="Up" type="submit" value="OnClick"/>

这时候我们在用函数访问其网页的时候要传送过去的数据  格式  就可能是 

UserName=123456&PassWord=123&Up=++%B5%C7%C2%BC++

这是怎样知道的呢??先别急,介绍大家一个抓包工具,火狐浏览器的firebug,或者其他,就是抓包工具。

上面的例子是最简单的,实际上,如果遇到了我说的<input type="submit" value="OnClick"/>,怎么办,

这时候要看它的表单的 action的链接 因为这个才是真正的提交页面,然后直接post UserName=123456&PassWord=123就行了。

ajax提交的,就要用到抓包工具,抓取传送的源代码,再组合成data,post

还一种情况,就是有隐藏的输入情况,什么意思呢, type="hidden" 这是不用自己输入的,但是,我们在用curl函数访问登陆页面的时候

如果要成功进去,就要传送所用的 input,对于hidden的情况,也是用抓包工具。

最后的提示是,切记,数据的传送是urlencode编码后的数据,在传之前,记得先编码,直接套用抓包工具的源代码,就不用再编码了,它已经帮你干了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xcywt

《Linux命令行与shell脚本编程大全》第二十六章 一些有意思的脚本

26.1 发送消息 26.1.1 功能分析 1.确定系统中都有谁 $who 给出的信息包括用户名 用户所在终端 用户登入系统的时间 2.启用消息功能 用户可以禁...

1977
来自专栏菜鸟前端工程师

JavaScript学习笔记028-ajax0get0post0跨域请求

531
来自专栏用户画像

搭建Springboot框架,并添加JPA和Gradle组件

将34行的providedRuntime修改为compile,否者项目无法正常启动

744
来自专栏小程序解决方案的专栏

自己部署 Node.js 版本的 Wafer2 Demo

自行部署适用于想将腾讯云 Wafer SDK 和 Demo 部署在自己的服务器上以获得更高的灵活性和操纵权限的用户。部署过程需要从 0 开始搭建线上环境,需要有...

7.3K5
来自专栏农夫安全

文件上传漏洞超级大汇总-最最终篇

18、文件名大小写绕过上传限制 1. 首先访问网站页面,如下图: ? 1. 上传一个test.php文件,发现弹出窗口禁止php上传。如下图所示: ? 1. ...

4248
来自专栏静下来

WordPress升级遇到504 Gateway Time-out 另一更新正在进行的解决方法

WordPress在后台在线升级的时候,会遇到服务器返回提示504 Gateway Time-out的错误。 这个问题主要是出现在nginx环境下,并且服务器是...

39211
来自专栏从零开始学自动化测试

python+requests接口自动化项目完整框架设计

前言 有很多小伙伴吵着要完整的项目源码,完整的项目属于公司内部的代码,这个是没法分享的,违法职业道德了,就算别人分享了,也只适用于本公司内部的业务。 所以用例的...

3045
来自专栏FreeBuf

Apache CVE-2017-7659漏洞重现及利用分析

近日,apache在其网站发布了最新的安全公告,其中涉及多个漏洞。针对CVE-2017-7659漏洞的介绍是这样的: A maliciously constru...

3166
来自专栏xcywt

记录我学github的路程(二)

2015-12-09 更新 1,现在,本地有了一个库,你可能会想到GitHub创建一个库,并且关联起来。这样,远程的库既可以当作备份,又可以让其他人通过该仓库来...

18110
来自专栏Java工程师日常干货

工程化专题之Maven(下)前言不同环境使用不同配置:Profile+Filter多模块开发:继承与聚合私服

本文是工程化专题之Maven的下篇,主要涵盖的是Maven的Profile/Filter特性,多模块开发以及私服等内容。

431

扫码关注云+社区