zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    Proteus仿真与实际的差别
    用 Proteus学习51单片机之1602液晶
    用Proteus学习51单片机之中断
    用Proteus学习51单片机之键盘
    用Proteus学习51单片机之数码管
    PHPnow 安装服务 [ Apache_pn ] 失败的解决方法 for[windows7/vista]
    chrome 不能打印背景图的解决方法
    JS 无块级作用域
    IE6下zindex犯癫不起作用bug的初步研究
    ie6下的js调试工具companion.js
  • 原文地址:https://www.cnblogs.com/softidea/p/5116229.html
Copyright © 2011-2022 走看看