• 登录中国人民银行征信中心


    登录央行征信 https://ipcrs.pbccrc.org.cn


     1 # coding=utf-8
     2 import requests
     3 import time
     4 import os
     5 import re
     6 from  lxml  import etree
     7 import warnings
     8 warnings.filterwarnings("ignore")
     9 
    10 from Logger import Logger
    11 logger=Logger(logname='logcrcc.txt', loglevel=1, logger="crcc").getlog()
    12 class Crcc(object):
    13     headerx={
    14             'Host':'ipcrs.pbccrc.org.cn',
    15             'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
    16         }
    17     def __init__(self,username,passwd):
    18         self.username=username
    19         self.passwd=passwd
    20         self.ss=requests.Session()
    21 
    22     def loginreg(self):
    23         self.headerx.update({'Referer': 'https://ipcrs.pbccrc.org.cn/',})
    24         self.ss.get('https://ipcrs.pbccrc.org.cn/login.do?method=initLogin', verify=False,headers=self.headerx)
    25         url='https://ipcrs.pbccrc.org.cn/page/login/loginreg.jsp'
    26         resp=self.ss.get(url, verify=False,headers=self.headerx)
    27         print resp.content.decode('gbk')
    28         self.token_value=re.search('taglib.html.TOKEN" value="(.*?)"> ',resp.content).group(1)
    29         self.verification_code_url=re.search('<img src="/(.*?)" id="imgrc"',resp.content).group(1)
    30         self.date=re.search('<input type="hidden" name="date" value="(.*?)"/>',resp.content).group(1)
    31         print self.token_value,self.verification_code_url,self.date,
    32 
    33     def get_verification_code(self):
    34 
    35         self.headerx.update({
    36             'Referer': 'https://ipcrs.pbccrc.org.cn/page/login/loginreg.jsp',
    37         })
    38         url='https://ipcrs.pbccrc.org.cn/%s'%self.verification_code_url
    39         resp=self.ss.get(url,verify=False,headers=self.headerx)
    40         if not  os.path.exists('pictures'):
    41             os.mkdir('pictures')
    42         self.pic_name='pictures/%s.jpg'%str(time.time()).replace('.','')
    43         try:
    44             with open(self.pic_name,'wb') as f:
    45                 f.write(resp.content)
    46             print self.pic_name
    47             os.system(self.pic_name.replace('/','\'))    #TODO win下面
    48         except Exception,e:
    49             logger.debug(u'保存图片出错,原因是:%s'%(str(e)))
    50 
    51     def login(self):
    52         self.get_verification_code()
    53         verification_code=raw_input('请输入验证码:')
    54         url='https://ipcrs.pbccrc.org.cn/login.do'
    55         datax={
    56         'org.apache.struts.taglib.html.TOKEN':self.token_value,
    57         'method':'login',
    58         'date':self.date,                            #self.date,
    59         'loginname':self.username,
    60         'password':self.passwd,
    61         '_@IMGRC@_':verification_code                 #verification_code,
    62         }
    63         self.headerx.update({
    64             'Referer':'https://ipcrs.pbccrc.org.cn/login.do',
    65         })
    66         print  datax
    67         resp=self.ss.post(url,datax,headers=self.headerx,verify=False)
    68         print resp.content.decode('gbk')
    69         print self.ss.get('https://ipcrs.pbccrc.org.cn/welcome.do',headers=self.headerx).content.decode('gbk')
    70 
    71 crccx=Crcc('ydfxxx','123456789yyy')
    72 #crccx.get_verification_code()
    73 crccx.loginreg()
    74 crccx.login()


    登录成功后,welcome页面可以显示今天第几次登录,说明登录成功了。登录成功后,授权爬取个人信用信息提示,个人信用信息概要,个人信用报告这三种信用信息。
  • 相关阅读:
    判断图片是否存在,不存在则显示默认图片
    移动端开发时代理手机http访问查看效果(iphone)
    VS Code搭建TypeScript开发环境
    map,foreach和for的使用
    记一些常用的git命令
    js中创建对象的5种方法
    vuex简单使用
    记一下Slot的使用
    ES6中的箭头函数和普通函数有什么区别?
    计算属性、方法、侦听属性的区别
  • 原文地址:https://www.cnblogs.com/ydf0509/p/7589109.html
Copyright © 2020-2023  润新知