9159金沙游艺场-奥门金沙游艺场-[欢迎您]

9159金沙游艺场为您呈现最新的面貌!,目前注册送体验金,欢迎您将成为影视娱乐行业新的风向标,是亚洲的优质娱乐先锋。

Python模拟登录12306的方法9159金沙游艺场

日期:2020-01-04编辑作者:办公软件

Python模拟登入12306的措施,python模拟12306

本文实例汇报了Python模拟登入12306的方法。分享给我们供大家参照他事他说加以考察。

切实达成方式如下:

复制代码 代码如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import re;
import sys;
import cookielib;
import urllib;
import urllib2;
import optparse;
import json;
import httplib2;

reload(sys)
sys.setdefaultencoding('utf8');

def Login():
 
    cj = cookielib.CookieJar();
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj));
    urllib2.install_opener(opener);
 
    print "--------------[step1] to get cookie";
    Url = "";
    resp = urllib2.urlopen(Url);
    for index, cookie in enumerate(cj):
        print '[',index, ']',cookie;

    
    print "--------------[step2] to get code";
    Url2 = "";
    resp2 = urllib2.urlopen(Url2);

    #respInfo2 = resp2.info();
    #print "respInfo=",respInfo2;

    with open("code.png", "wb") as image:
        image.write(resp2.read())
       
    codeStr = sys.stdin.readline();
    codeStr = codeStr[:-1]
   
    print "--------------[step3] to check code";
    ajax_url = "";
    dc = {
        'randCode'      :  codeStr,
        'rand'      : "sjrand"
    };
    request = urllib2.Request(ajax_url, urllib.urlencode(dc))
    request.add_header("Content-Type", "application/x-www-form-urlencoded; charset=utf-8")
    request.add_header('X-Requested-With','XMLHttpRequest')
    request.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36')
    request.add_header('Referer','')
    request.add_header('Accept','*/*')
    request.add_header('Accept-Encoding','gzip, deflate')

    f = urllib2.urlopen(request)
    print(f.read())

    print "--------------[step4] to login";
    LoginUrl = "";
    dc = {
         'randCode'      :  codeStr,
         'userDTO.password'     : "sunyuke1989",
        'loginUserDTO.user_name': "[email protected]"
    };
    req = urllib2.Request(LoginUrl, urllib.urlencode(dc));
    req.add_header('Content-Type', "application/x-www-form-urlencoded");
    req.add_header('X-Requested-With','XMLHttpRequest');
    req.add_header('Origin','');
    req.add_header('Referer','');
    req.add_header('Accept','*/*');
    req.add_header('Accept-Encoding','gzip, deflate');
    req.add_header('Connection','keep-live');
    request.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36')
    resp = urllib2.urlopen(req);
    print(resp.read().encode('gb18030'));

    LoginingUrl = "";
    req = urllib2.Request(LoginingUrl, "");

    print "--------------[step5] to QueryUserInfo";
    LoginingUrl = "";
    req = urllib2.Request(LoginingUrl, "");
    resp = urllib2.urlopen(req);
    info = resp.read();
    print(resp.read().encode('gb18030'));

 
if __name__=="__main__":
    Login();

盼望本文所述对我们的Python程序设计具备利于。

本文实例陈说了Python模拟登陆12306的办法。分享给我们供大家参谋。 具体落到实处格局如下: 复制代码...

本文由9159金沙游艺场-奥门金沙游艺场-[欢迎您]发布于办公软件,转载请注明出处:Python模拟登录12306的方法9159金沙游艺场

关键词:

python学习笔记list

Python学习笔记(1卡塔尔(قطر‎——list,python学习笔记list python中List 是三个用方括号包涵起来的不变成分的会见。 l...

详细>>

JS动态增多iframe的代码

JS动态添加iframe的代码,js动态iframe 一般对于ie9以上的浏览器、chrome等浏览器都可以支持 var iframe = document.createElemen...

详细>>

python创建快捷方式

python创建快捷方式 有了pywin32是不是就能在Windows上为所欲为了? 是的。 # -*- coding: cp936 -*- # import osimport pythoncomfrom ...

详细>>

为python设置socket代理的措施9159金沙游艺场

为python设置socket代理的方法,pythonsocket代理 首先,你得下载SocksiPy这个.解压出来之后里面会有一个socks.py文件.然后你可...

详细>>