文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python模拟表单提交(一)

2023-01-31 02:33

关注

  以后可能要用到这方面的东西,所以先实践一下,比如抢火车票。

 第一步:本地搭建一个程序, 如下,代码很丑陋,别笑

     主要就是一个用户名,一个密码框,和一个提交按钮

  1. <html>  
  2. <head><title>Example</title></head>  
  3. <body>  
  4.  <?php  
  5.    if (isset($_POST["username"])) {  
  6.      echo "you password is " . $_POST["pwd"];   
  7.    }   
  8.    else {  
  9.      echo "no!";  
  10.    }  
  11.  ?>  
  12.  <form name = "myform" action = "" method = "post">  
  13.    <label>用户名:</label><input type="text" name = "username"></input></br>  
  14.    <label>密码</label><input type="password" name = "pwd"></input></br>  
  15.    <input type="submit" name = "ok"></input>  
  16.  </form>  
  17. </body>  
  18. </html> 

第二步: 使用工具分析浏览器提交的工具,可以用抓包工具。我使用的是火狐浏览器,本身就提供有这样的工具:

   选择开发者工具,WEB开发者-》WEB控制台-》网络

 

 

第三步:写python代码,我也是谷歌找来的,如下

  1. # -*- coding: utf-8 -*-    
  2. import re    
  3. import urllib    
  4. import urllib2    
  5. import cookielib    
  6.  
  7.  
  8. cj = cookielib.CookieJar()    
  9. #我们post的表单数据    
  10. post_data = urllib.urlencode({'username': 'hhq','pwd': '1000'})    
  11. #登录路径    
  12. path = 'http://localhost:81/'    
  13. opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))    
  14. opener.addheaders = [('User-agent', 'Mozilla/5.0 (Windows NT 6.1; rv:20.0) Gecko/20100101 Firefox/20.0')]    
  15. urllib2.install_opener(opener)    
  16. req = urllib2.Request(path, post_data)    
  17. conn = urllib2.urlopen(req)    
  18.  
  19. print urllib2.urlopen(req).read()    

到这里,print 出来的就是提交表单后的网页。

代码有些地方我也不是很理解,找到两篇文章如下,有空慢慢学习:

http://www.cnblogs.com/yuxc/archive/2011/08/01/2123995.html

http://www.cnblogs.com/icgg/articles/1703392.html

今天就先到这里。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯