




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第利用Python實(shí)現(xiàn)模擬登錄知乎logger=createLogger('mylogger','temp/logger.log')
logger.debug('loggerdebugmessage')
('loggerinfomessage')
logger.warning('loggerwarningmessage')
logger.error('loggererrormessage')
logger.critical('loggercriticalmessage')
"""
defcreateLogger(self,logger_name,log_file):
#創(chuàng)建一個(gè)logger
logger=logging.getLogger(logger_name)
logger.setLevel(logging.INFO)
#創(chuàng)建一個(gè)handler,用于寫(xiě)入日志文件
fh=logging.FileHandler(log_file)
#再創(chuàng)建一個(gè)handler,用于輸出到控制臺(tái)
ch=logging.StreamHandler()
#定義handler的輸出格式formatter
formatter=logging.Formatter('%(asctime)s|%(name)s|%(levelname)s|%(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)
#給logger添加handler
logger.addHandler(fh)
logger.addHandler(ch)
returnlogger
關(guān)于模擬登錄知乎的源碼,保存在zhiHuLogin.py文件,內(nèi)容如下:
#-*-coding:utf-8-*-
CreatedonThuNov0217:07:172016
@author:liudiwei
importurllib
fromWSpiderimportWSpider
frombs4importBeautifulSoupasBS
importgetpass
importjson
importWLoggerasWLog
2016.11.03由于驗(yàn)證碼問(wèn)題暫時(shí)無(wú)法正常登陸
2016.11.04成功登錄,期間出現(xiàn)下列問(wèn)題
驗(yàn)證碼錯(cuò)誤返回:{"r":1,"errcode":1991829,"data":{"captcha":"驗(yàn)證碼錯(cuò)誤"},"msg":"驗(yàn)證碼錯(cuò)誤"}
驗(yàn)證碼過(guò)期:{"r":1,"errcode":1991829,"data":{"captcha":"驗(yàn)證碼回話無(wú)效:(","name":"ERR_VERIFY_CAPTCHA_SESSION_INVALID"},"msg":"驗(yàn)證碼回話無(wú)效:("}
登錄:{"r":0,"msg":"登錄成功"}
defzhiHuLogin():
spy=WSpider()
logger=spy.createLogger('mylogger','temp/logger.log')
homepage=r"/"
html=spy.opener.open(homepage).read()
soup=BS(html,"html.parser")
_xsrf=soup.find("input",{'type':'hidden'}).get("value")
#根據(jù)email和手機(jī)登陸得到的參數(shù)名不一樣,email登陸傳遞的參數(shù)是‘email',手機(jī)登陸傳遞的是‘phone_num'
username=raw_input("Pleaseinputusername:")
password=getpass.getpass("Pleaseinputyourpassword:")
account_name=None
if"@"inusername:
account_name='email'
else:
account_name='phone_num'
#保存驗(yàn)證碼
("savecaptchatolocalmachine.")
captchaURL=r"/captcha.giftype=login"#驗(yàn)證碼url
spy.saveCaptcha(captcha_url=captchaURL,outpath="temp/captcha.jpg")#temp目錄需手動(dòng)創(chuàng)建
#請(qǐng)求的參數(shù)列表
post_data={
'_xsrf':_xsrf,
account_name:username,
'password':password,
'remember_me':'true',
'captcha':raw_input("Pleaseinputcaptcha:")
#請(qǐng)求的頭內(nèi)容
header={
'Accept':'*/*',
'Content-Type':'application/x-www-form-urlencoded;charset=UTF-8',
'X-Requested-With':'XMLHttpRequest',
'Referer':'/',
'Accept-Language':'en-GB,en;q=0.8,zh-CN;q=0.6,zh;q=0.4',
'Accept-Encoding':'gzip,deflate,br',
'User-Agent':'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/53.0.2785.116Safari/537.36',
'Host':''
url=r"/login/"+account_name
spy.setRequestData(url,post_data,header)
resText=spy.getHtmlText()
jsonText=json.loads(resText)
ifjsonText["r"]==0:
("Loginsuccess!")
else:
logger.error("LoginFailed!")
logger.error("Errorinfo"+jsonText["msg"])
text=spy.opener.open(homepage).read()#重新打開(kāi)主頁(yè),查看源碼可知此時(shí)已經(jīng)處于登錄狀態(tài)
spy.output(text,"out/home.html")#out目錄需手動(dòng)創(chuàng)建
if__name__=='__main__':
zhiHuLogin()
關(guān)于源碼的分析,可以參考代碼中的注解。
運(yùn)行結(jié)果
在控制臺(tái)中運(yùn)行pythonzhiHuLogin.py,然后按提示輸入相應(yīng)的內(nèi)容,最后可得到以下不同的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 紡織工程師證書(shū)考試影響因素詳解試題及答案
- 新課標(biāo)綜合性試題及答案
- 虛擬考試面試題及答案
- 中外建筑歷史試題及答案
- 設(shè)計(jì)師證書(shū)考試內(nèi)容特征試題及答案
- 商的變化規(guī)律試題及答案
- 2025年軟木精粉項(xiàng)目市場(chǎng)調(diào)查研究報(bào)告
- 解析美術(shù)設(shè)計(jì)師考試的趨勢(shì)和變化試題及答案
- 助理廣告師考試2024年經(jīng)驗(yàn)分享試題與答案
- 助理廣告師考試趨勢(shì)和發(fā)展方向試題及答案
- NB-T35113-2018水電工程鉆孔壓水試驗(yàn)規(guī)程
- DB51-T 5071-2011 蒸壓加氣混凝土砌塊墻體自保溫工程技術(shù)規(guī)程
- 小學(xué)數(shù)學(xué)二年級(jí)下冊(cè)-第七、八單元教材分析
- 2024年計(jì)算機(jī)軟考(初級(jí))程序員考試題庫(kù)大全(含真題等)
- 職業(yè)道德與法律第一課第一節(jié)課件市公開(kāi)課一等獎(jiǎng)省賽課微課金獎(jiǎng)?wù)n件
- 部編人教版《道德與法治》九年級(jí)下冊(cè)教案(全冊(cè))
- 2024春期國(guó)開(kāi)電大思政課《中國(guó)近現(xiàn)代史綱要》在線形考(專題檢測(cè)一至八)試題及答案
- 全過(guò)程工程咨詢服務(wù)項(xiàng)目管理服務(wù)方案
- 復(fù)方氨基酸注射液(17AA-II)-臨床用藥解讀
- 貧血中醫(yī)辨證分析
- PLC的故障排除與維護(hù)技巧與方法
評(píng)論
0/150
提交評(píng)論