使用cookie登錄


import urllib3
import urllib
import http.cookiejar
import webbrowser
#聲明一個CookieJar對象實例來保存cookie
#利用urllib2庫的HTTPCookieProcessor對象來創建cookie處理器
#此處的open方法同urllib2的urlopen方法,也可以傳入request
cookie = http.cookiejar.CookieJar()
hander=urllib.request.HTTPCookieProcessor(cookie)
opener=urllib.request.build_opener(hander)
response=opener.open('http://www.baidu.com')
for item in cookie:
    print( 'Name = '+item.name)
    print( 'Value = '+item.value)

filename='cookie.txt'
cookie=http.cookiejar.MozillaCookieJar(filename)
hander=urllib.request.HTTPCookieProcessor(cookie)
opener=urllib.request.build_opener(hander)
response=opener.open('http://www.baidu.com')
cookie.save(ignore_discard=True,ignore_expires=True)


cookie=http.cookiejar.MozillaCookieJar()
cookie.load('cookie.txt',ignore_discard=True,ignore_expires=True)
req=urllib.request.Request('http://www.baidu.com')
opener=urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookie))
response=opener.open(req)
print(response.read())


from urllib import request
if __name__ == '__main__':
    url = "http://oajy.sztljt.com:8080/sys/portal/page.jsp"

    headers = {
         #Cookie值從登錄后的瀏覽器,拷貝,方法文章上面有介紹
        "Cookie": "zVEQTk1Q0I0NURBOTc4RDRjaGVuZ3hmR2DpSJ3lagbugXAfR/sqQONxXMk="
        }

    req = request.Request(url=url,headers=headers)

    rsp = request.urlopen(req)
    html = rsp.read().decode()

    with open("rsp.html","w",encoding="utf-8")as f:
         #將爬取的頁面
        print(html)
        f.write(html)
#模擬登錄
postdata=data.encode('utf-8')
loginurl='http://oajy.com:8080/sys/portal/page.jsp'
#獲取cookie
#保存到txt
#讀取cookie
filename='OAcookie.txt'
cookie=http.cookiejar.MozillaCookieJar(filename)
hander=urllib.request.HTTPCookieProcessor(cookie)
opener=urllib.request.build_opener(hander)
result=opener.open(loginurl,postdata)
cookie.save(ignore_discard=True,ignore_expires=True)
##登錄網站
geturl='http://zs.sztljyjt.com/admission/admission-manage'
try:
    result=opener.open(geturl)
except :
    print("登錄失敗")
print(result.read())

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM