• python load cookie 请求


    # !/usr/bin/env python
    # -*- coding: utf-8 -*-
    import urllib2
    import urllib
    import cookielib
    import json
    import httplib
    import re
    import requests
    import os
    import time
    import requests, requests.utils, pickle
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')
    try:
        import cookielib  # 兼容Python2
    except:
        import http.cookiejar as cookielib
    
    s = requests.session()
    print s.headers
    from requests.packages.urllib3.exceptions import InsecureRequestWarning
    
    requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
    s.cookies = cookielib.LWPCookieJar(filename="cookies.txt")
    # with open('cook.txt', 'r') as f:
    #    cookies = json.loads(f.read())
    # print cookies
    
    if os.path.exists('cookies.txt'):
        with open("cookies.txt", "r") as f:
            load_cookies = json.loads(f.read())
        s.cookies = requests.utils.cookiejar_from_dict(load_cookies)
        print '1111111111111111111111111111111111111111111'
        #print s.get('https://oauth2.lvchengcaifu.com/').content
        r=s.get('https://oauth2.lvchengcaifu.com/').text
        print type(r)
        r=r.encode('utf8')
        print type(r)
        print r
        #print time.sleep(30)
        if  re.search('xx',r) :
            print 'cookie 可以使用'
        else:
         print 'cookie 已过期'
         url = "https://oauth2.lvchengcaifu.com/login"
         headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0',
            'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
    
         }
         r = s.get(url, headers=headers, verify=False)
         r = r.text
         print r
         print type(r)
         r = r.encode('unicode-escape')
         print type(r)
         p = re.compile('.*_csrf"s+value="(.*?)".*')
         m = p.match(r)
         token = m.group(1)
         print token
         imgurl = 'https://oauth2.lvchengcaifu.com/Kaptcha.jpg'
         r = s.get(imgurl)
         r = r.content
         # print s
         print type(r)
         print r
         filename = 'E:image.jpg'
         local = open(filename, 'wb')
         local.write(r)
         local.close()
         print "登录二维码已经下载到本地" + "[" + filename + "]"
    
         ##打开图片
         os.system("start %s" % filename);
         code = raw_input('输入验证码: ')
         print code
         print len(code)
    
        ## <input type="hidden" id="_csrf" name="_csrf" value="6f772fd9-14da-40c4-b317-e8d9a4336203" />
         login_url = 'https://oauth2.lvchengcaifu.com/login/form'
         data = {'username': 'xx', 'password': '@', '_csrf': token, 'validCode': code}
         response = s.post(login_url, data=data, headers=headers)
         print  response.content
         aa = s.cookies
         print '-------------------------------------'
         print aa
         cookies = requests.utils.dict_from_cookiejar(s.cookies)
         with open("cookies.txt", 'w') as fp:
            json.dump(cookies, fp)
         print(cookies)
    
    
    
  • 相关阅读:
    手机端网页web开发要点
    js javascript:void(0) 真正含义
    牛客第二场 C.message(计算几何+二分)
    计算几何_三维凸包
    【kuangbin专题】计算几何_半平面交
    【kuangbin专题】计算几何_凸包
    【kuangbin专题】计算几何基础
    Codeforces 1058 D. Vasya and Triangle(分解因子)
    网络流模板
    2018 Multi-University Training Contest 6
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13348685.html
Copyright © 2020-2023  润新知