您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關python 怎么登錄網站,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
python實現登錄網站的方法:
1、首先我們要先了解cookie的工作原理。
Cookie是由服務器端生成,發送給User-Agent(一般是瀏覽器),瀏覽器會將Cookie的key/value保存到某個目錄下的文本文件內,下次請求同一網站時就發送該Cookie給服務器(前提是瀏覽器設置為啟用cookie)。Cookie名稱和值可以由服務器端開發自己定義,對于JSP而言也可以直接寫入jsessionid,這樣服務器可以知道該用戶是否合法用戶以及是否需要重新登錄等。
2、之后我們要獲取到用戶正常登錄的cookie.
python提供了cookieJar的庫,只要把cookieJar的實例作為參數傳到urllib2的一個opener里面。
然后訪問一次登錄的頁面,cookie就已經保存下來了。之后通過這個實例訪問所有的頁面都帶有正常登陸的cookie了。
以人人網為例子。
#encoding=utf-8 import urllib2 import urllib import cookielib def renrenBrower(url,user,password): #登陸頁面,可以通過抓包工具分析獲得,如fiddler,wireshark login_page = "http://www.renren.com/PLogin.do" try: #獲得一個cookieJar實例 cj = cookielib.CookieJar() #cookieJar作為參數,獲得一個opener的實例 opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) #偽裝成一個正常的瀏覽器,避免有些web服務器拒絕訪問。 opener.addheaders = [('User-agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)')] #生成Post數據,含有登陸用戶名密碼。 data = urllib.urlencode({"email":user,"password":password}) #以post的方法訪問登陸頁面,訪問之后cookieJar會自定保存cookie opener.open(login_page,data) #以帶cookie的方式訪問頁面 op=opener.open(url) #讀取頁面源碼 data= op.read() return data except Exception,e: print str(e) #訪問某用戶的個人主頁,其實這已經實現了人人網的簽到功能。 print renrenBrower("http://www.renren.com/home","用戶名","密碼")
上述就是小編為大家分享的python 怎么登錄網站了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。