1. 程式人生 > >PYTHON 之 自動登入

PYTHON 之 自動登入

很多時候訪問一個網站都得需要我們登入後才能訪問,於是我做了一個小指令碼,可以自動登入。

import urllib.request,urllib.parse,urllib.error   //匯入包

from http import cookiejar   //匯入包

Login_url="http://xxxxxxxxxxxxxxxxxxxxx"   //登入介面的網址

values={'username':'aaaaa','password':'dddddd'}   //你的使用者名稱 密碼  這個東東 得自己取審查元素 看看需要什麼

data=urllib.parse.urlencode(data).decode() //把傳入的資料格式化

user_agent = r'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.62 Safari/537.36'    //偽造瀏覽器登入

headers = {'User-Agent':user_agent, 'Connection': 'keep-alive'}  //偽造瀏覽器登入

filename="cookie.txt"  //建立一個本地txt問件

cookie=cookiejar.MozillaCookiejar(filename)  //相當於建立一個cookie例項

handler=urllib.request.HttpCookieProcessor(cookie)  //一個處理器

opener=urilib.request.bulid_opener(handler) //這個東東是用來獲取cookie後來登入的

request=urllib.request.Request(Login_url,data,headers)

opener.open(request)

cookie.save(ignore_discard=True, ignore_expires=True)

get_url="需要登入後才能進入的網址"

get_request(get_url,header)

get_res=opener.open(get_request)

print(get_res.read.decode())

cookie小總結:在操作cookie時,都是分五步,如下:

進行導包,至關重要的一步,不導包直接出錯。

獲取cookie處理物件,使用cookiejar包

建立cookie處理器,使用request.HTTPCookieJarProcessor()

利用cookie處理器構建opener,使用request.build_opener()

進行請求網站,用opener.open(),這個不能用request.urlopen()