国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python模擬表單提交登錄圖書館

2020-01-04 15:20:02
字體:
來源:轉載
供稿:網友

本文實例為大家分享了python模擬登錄圖書館的具體代碼,供大家參考,具體內容如下

模擬表單提交的原理:

我們都知道Http是無狀態的,所以當我們提交的數據和瀏覽器中正常提交一樣,那么服務器就會返回和瀏覽器中一樣的響應。所以我們這里來模擬瀏覽器表單提交登錄廣東工業大學的圖書館 http://222.200.122.171:7771/login.aspx獲取cookie,我們接下來訪問圖書館網站里的其他頁面時就帶上這個cookie,服務器會認為我是已經登錄的用戶,回正常返回數據給我。

首先我們先用瀏覽器查看頁面源代碼找到要提交的form表單:

python,模擬登錄,圖書館

接下來我們要獲取表單中的input 包括hidden,因為hidden也會跟著表單一起提交.找到賬號和密碼對應的name  到時候我們需要用自己的賬號填寫的.

python,模擬登錄,圖書館

獲取到所有的要提交的表單內容后,將賬號和密碼替換成自己的賬號和密碼,提交請求.獲取cookie并保存在cookie中。

代碼如下(Python2.7版本 和Python3都其實都差不多):

# -*- coding:utf-8 -*- import urllib import urllib2 import cookielib import bs4  result = urllib2.urlopen("http://222.200.122.171:7771/login.aspx") soup = bs4.BeautifulSoup(result, "html.parser")  logindiv = soup.find("form", attrs={"name": "aspnetForm"}) Allinput = logindiv.findAll("input") inputData = {} for oneinput in Allinput:  if oneinput.has_attr('name'):   if oneinput.has_attr('value'):    inputData[oneinput['name']] = oneinput['value']   else:    inputData[oneinput['name']] = "" inputData['ctl00$ContentPlaceHolder1$txtPas_Lib'] = '*****' inputData['ctl00$ContentPlaceHolder1$txtUsername_Lib'] = '*******'  filename = 'cookie.txt' # 聲明一個MozillaCookieJar對象實例來保存cookie,之后寫入文件 cookie = cookielib.MozillaCookieJar(filename) opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie)) postdata = urllib.urlencode(inputData) result2 = opener.open("http://222.200.122.171:7771/login.aspx", postdata) cookie.save(ignore_discard=True, ignore_expires=True) #登錄后 要訪問的url bookUrl = "http://222.200.122.171:7771/user/userinfo.aspx" result=opener.open(bookUrl) print result.read() 

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 仲巴县| 滕州市| 普定县| 乡宁县| 聂拉木县| 仪征市| 土默特右旗| 新竹市| 克拉玛依市| 色达县| 临海市| 罗定市| 咸阳市| 峨山| 泗洪县| 章丘市| 庆安县| 花莲市| 英吉沙县| 河曲县| 黄冈市| 富蕴县| 罗甸县| 扎赉特旗| 泽州县| 苏尼特右旗| 镇坪县| 土默特右旗| 玉屏| 泊头市| 扶余县| 花垣县| 监利县| 张家界市| 桂阳县| 资溪县| 阿合奇县| 集安市| 金门县| 元朗区| 区。|