登錄央行征信 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頁面可以顯示今天第幾次登錄,說明登錄成功了。登錄成功后,授權爬取個人信用信息提示,個人信用信息概要,個人信用報告這三種信用信息。