python带cookie提交表单自动登录(转)

今天突然把博客给申请了,以前也想过的,奈于自己觉得水平还太低有点不好意思写博客,但是后来一想,自己的记录所学,加深印象,主要还是为了学习进步,不怕丢人!今天就稍微回顾一下这两天写的一段用python模拟浏览器登录自己学校官网的代码吧(多亏大神指导了)。

 1 import urllib
 2 import urllib2
 3 import cookielib
 4
 5 login_url = "xxxxxxxxxxxxx"
 6
 7 cj = cookielib.CookieJar()#实例化对象,创建cookie容器cj
 8 opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))#通过build_opener方法构造一个包含把cookie传给HTTP...构造方法的类实例的URL访问器
 9
10 contens = opener.open(login_url).read()#这里是因为学校官网提交的表单中需要有一个lt参数,而它是变化的所以先获取解析一下得到它
11 lt = re.findall('<input type="hidden" name="lt" value="(.*)" />',contents1)
12 

   #好了现在把需要POST的数据都放到form_info中,里面的参数要具体分析!查看页面HTML的表单!
13 form_info={"username":"xx","password":"xx","lt":lt[0],"_eventId":"submit","errors":"0"}
14
15 postData = urllib.urlencode(form_info)
17 opener.addheaders=[("User-Agent","xxxx"),]#加个浏览器的请求头信息,模拟浏览器访问
18
19 resp = opener.open(login_url,postData)#开始登录
20
21 print resp.read()
22
23 #一般情况下到这里就可以继续用构造好的opener继续访问里面的页面了,可能里面有一些特别的页面会访问不了,具体问题还需具体分析

http://www.cnblogs.com/inva/p/4200189.html

时间: 2024-09-28 19:16:19

python带cookie提交表单自动登录(转)的相关文章

关于window.onload事件及post表单自动登录问题

问题描述 关于window.onload事件及post表单自动登录问题 各位道友好,关于onload在网上查了很多资料,各家众说纷纭. 最近做一个在A网站跳转B网站并自动登录,用户密码等用A网站此用户的资料.我的思路很简单:将数据从A中传到B,B接收数据,并将接收的数据填入表单,然后自动提交. 我提交的方式是用一个onload事件去调用登录按钮的函数. 但是在这个onload上出现了问题. 解决方案 1. window.onload=ParamOnload 改为 1. window.onload

【Python爬虫6】表单交互

手工处理发送POST请求提交登录表单 1分析表单内容 2手工测试post请求提交表单 3手工处理post请求登录的完整源代码 从FF浏览器加载cookie登录网站 1session文件位置 2FF浏览器cookie内容 3使用cookie测试加载登录 4使用cookie登录源代码 使用高级模块Mechanize自动化处理表单提交 1用高级模块Mechanize自动化处理表单提交并支持登录后网页内容更新 2用普通方法支持登录后网页内容更新 严格来说,本篇表单交互和下一篇验证码处理不算是网络爬虫,而

不同浏览器对回车提交表单的处理办法_javascript技巧

条件是: 在IE和Firefox下 1.<form>属性的"action"字段必填: 2.有一个type="submit"的"input". 在Chrome和Safari下 满足第一条即可.(注释1) 所以,如果要控制提交行为的话(比如,提交前检查必填项是否已填),可以在type="submit"的"input"后添加Javascript"onXXX(比如onClick)"事

C# .NET 模拟登录带有验证码的网站,并自动提交表单数据!

问题描述 1.模拟登录的网址:http://www.pceggs.com/nologin.aspx2.登陆后的页面网址:http://www.pceggs.com/play/pc28.aspx3.登陆后模拟表单提交的页面网址:http://www.pceggs.com/play/pg28Insert.aspx?LID=679556(注:此页面需要登录后才可以查看,并LID的值是最新一期需要投注的ID数字)[说明:1和2只是模拟登录网站,3是登录后模拟表单提交数据!]希望高手帮忙解决,基本随时在线

利用Php的CURL POST提交表单登录实例详解

例1 CURL使用POST提交XML数据  代码如下 复制代码 $url = "http://www.111cn.net"; <!--?xml version="1.0"?-->   $ch = curl_init(); $header[] = "Content-type: text/xml";//定义content-type为xml curl_setopt($ch, CURLOPT_URL, $url); //定义表单提交地址 cu

使用VB实现邮箱自动注册(一):表单自动提交

前些天在网上看到有人需要邮箱自动注册的程序,于是自己也写了一个,在查资料的过程中我看到一些网友写的类似文章,有一些是基于网络协议,需要了解session,cookie这些东西,对于一个新手来说很繁琐,等到把这些东西搞懂,热情也消耗殆尽.VB的优点就在于可以让那些对于计算机底层不是很了解的人迅速实现自己的程序设计,我找到了一种比较简单的办法,要求对HTML标记语言有所了解即可,现在把自己的经验写出来于各位网友共享,该方法也许不值一提,也许对您有所帮助. 我的办法就是利用控件WebBrowser,我

jsp中如何实现按下回车键自动提交表单?

问题描述 jsp中如何实现按下回车键自动提交表单? <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ include file="../../common/include_tag.jsp"%> <%@ include file="../../common/p

网页-表单自动填写内容提交

问题描述 表单自动填写内容提交 每天更新数据到mysql上.然后登陆网站,从数据库里面查找相关填表内容,然后自动填写进打开的网页表单内,自动点击提交,这个web网页 是别人的 解决方案 web automation的方式点击表格提交 解决方案二: 还可以浏览器插件,插入javascript来操作web页面 解决方案三: 下载httpanalyzerstd工具截取别人网站的提交动作的数据包,然后分析数据包格式构造,具体怎么操作自行百度,然后用使用http协议post方法提交,只要你数据包构造正确,

Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册

动态验证:(不需要建Model模型) 1.建一个控制器,做表单操作(包含验证) <?php namespace Biaodan\Controller; use Think\Controller; class BiaodanController extends Controller { public function test() { if(empty($_POST))//如果$_POST空,显示添加页面, { $this->show(); } else //如果$_POST不为空,走验证,验证