论提交一个基本表单

论提交一个基本表单

说明

操作语言:python
处理系统:windows10

表单

大多数网页表单都是由一些HTML 字段、一个提交按钮、一个在表单处理完之后跳转的“执行结果”(表单属性action 的值)页面构成。虽然这些HTML 字段通常由文字内容构成,但是也可以实现文件上传或其他非文字内容。

举例

这是一个最简单的表单
此表单的源代码如下:


<h2>Tell me your name!</h2>
<form method="post" action="processing.php">
First name: <input type="text" name="firstname"><br>
Last name: <input type="text" name="lastname"><br>
<input type="submit" value="Submit" id="submit">
</form>

说明
表单的真实行为其实发生在processing.php(绝对路径是http://pythonscraping.com/files/processing.php)。表单的任何POST 请求其实都发生在这个页面上,并非表单本身所在的页面。
注意:

Request库

用Requests 库提交表单只用四行代码就可以实现,包括导入库文件和打印内容的语句,对呀你没有看出,python就是这么神奇!!!
01 代码

# coding=utf-8
"""
@author: jiajiknag
程序功能: 提交表单
"""
import requests
params = {'firstname': 'jia', 'lastname': 'jikang'}
r= requests.post("http://pythonscraping.com/files/processing.php", data=params)
print(r.text)

02 结果

这里写图片描述
重点说明
此程序可以用来处理许多网站的简单表单,比如O’Reilly Media 新闻订阅页面的表单源代码如下所示:

<form action="http://post.oreilly.com/client/o/oreilly/forms/
quicksignup.cgi" id="example_form2" method="POST">
<input name="client_token" type="hidden" value="oreilly" />
<input name="subscribe" type="hidden" value="optin" />
<input name="success_url" type="hidden" value="http://oreilly.com/store/
newsletter-thankyou.html" />
<input name="error_url" type="hidden" value="http://oreilly.com/store/
newsletter-signup-error.html" />
<input name="topic_or_dod" type="hidden" value="1" />
<input name="source" type="hidden" value="orm-home-t1-dotd" />
<fieldset>
<input class="email_address long" maxlength="200" name=
"email_addr" size="25" type="text" value=
"Enter your email here" />
<button alt="Join" class="skinny" name="submit" onclick=
"return addClickTracking('orm','ebook','rightrail','dod'
);" value="submit">Join</button>
</fieldset>
</form>

1:我们想提交数据的字段名称(代码中的email_addr)
2:表单的action 属性,也就是表单提交后网站会显示的页面(
这个例子中是:http://post.oreilly.com/client/o/oreilly/forms/quicksignup.cgi)把对应的信息增加到请求信息中,运行代码即可。
3:代码

# coding=utf-8
"""
@author: jiajiknag
程序功能: 提交表单
"""
import requests
params = {'email_addr': 'ryan.e.mitchell@gmail.com'}
r = requests.post("http://post.oreilly.com/client/o/oreilly/forms/quicksignup.cgi", data=params)
print(r.text)

4:结果
这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
可以使用 JavaScript 来实现多个表单共用一个提交的功能。具体实现步骤如下: 1. 给每个表单添加一个 class 或 ID,用于标识不同的表单。 2. 给提交按钮添加一个点击事件,获取所有表单的数据,并进行提交。 3. 在点击事件中,使用 `document.querySelectorAll()` 方法获取所有表单元素,然后遍历每个表单,获取表单数据,并将数据拼接成一个对象。 4. 最后将获取到的数据对象使用 Ajax 或表单提交方式进行提交。 下面是一个简单的示例代码,供参考: HTML 代码: ```html <form class="form1"> <input type="text" name="username" /> <input type="password" name="password" /> </form> <form class="form2"> <input type="text" name="email" /> <input type="text" name="phone" /> </form> <button id="submitBtn">提交</button> ``` JavaScript 代码: ```js const submitBtn = document.querySelector('#submitBtn'); submitBtn.addEventListener('click', () => { const forms = document.querySelectorAll('form'); const data = {}; forms.forEach((form, index) => { const formData = new FormData(form); for (let [key, value] of formData.entries()) { data[`form${index + 1}_${key}`] = value; } }); // 使用 Ajax 或表单提交方式进行提交 // ... }); ``` 在上面的代码中,我们将表单数据拼接成了一个对象 `data`,并通过 `data` 对象来传递数据。在实际开发中,可以根据需求来选择使用 Ajax 或表单提交方式进行提交

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

贾继康

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值