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

首頁 > 編程 > Python > 正文

python實現自動登錄后臺管理系統

2020-01-04 14:19:11
字體:
來源:轉載
供稿:網友

本文實例為大家分享了python實現自動登錄后臺管理系統的具體代碼,供大家參考,具體內容如下

首先感謝下網絡上的各位大神和博主,通過學習各位大神的文章,才實現了該腳本

①首先瀏覽器運行真是系統通過fiddler抓包,抓取到登錄地址(后面的地址和頭部信息等都是通過fiddler抓取的)

python,自動登錄,后臺管理系統

并獲取頭信息,header信息里面Accept-Encoding: gzip, deflate去掉吧,免得后面提取頁面的url時無法解碼,通過代碼實現后,這個時候回返回html文本,從文本里面獲取下一步要進入的系統的地址,這個地址已經附上cookie即token了,只有經過了這一步請求,才能進行下一步的對系統里面的內容進行操作(之前沒有經過這一步,就進行了具體操作的url請求,總是返回重定位到登錄界面)。

②然后再進行這個帶token的url的請求

③請求完成后即可進行想要的操作了

下面直接上代碼,有一些信息是公司的信息,我直接屏蔽換成通用字符串

# coding=utf-8import urllib.requestimport urllibimport http.cookiejarfrom database_functions import *import re  # 正則表達式匹配規則regx = re.compile(r'(.*)(href=/")(.*)(/"/starget=.*bms.*)')  # 定義一個方法用于生成請求頭信息,處理cookiedef getopener(head):   cj = http.cookiejar.CookieJar()  pro = urllib.request.HTTPCookieProcessor(cj)  opener = urllib.request.build_opener(pro)  header = []  for key, value in head.items():    elem = (key, value)    header.append(elem)  opener.addheaders = header  return opener  def modify_appeal_status_pass(phone):   index, status = get_appeal_by_phone(phone)  # 封裝頭信息,偽裝成瀏覽器  header = {    'Connection': 'Keep-Alive',    'Accept-Language': 'zh-CN,zh;q=0.9',    'Accept': 'application/json, text/javascript,text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36',    'X-Requested-With': 'XMLHttpRequest',    'Host': 'xxx.xxx.xxx',  }   # 登錄地址  login_url = 'http://xxx.xxx.xxx/xx-xxx/login.do'   # request封裝cookie和頭信息  opener = getopener(header)  urllib.request.install_opener(opener)   username = '***' # 你的用戶名  password = '***' # 你的密碼  postdict = {    'username': username,    'password': password  }   # 登錄請求  postdata = urllib.parse.urlencode(postdict).encode('utf-8')  login_response = urllib.request.Request(login_url, data=postdata, headers=header) #登錄系統  login_webpage = urllib.request.urlopen(login_response)  # 返回的html頁面  login_data = login_webpage.read().decode()   # 獲取系統地址  bms_url = regx.findall(login_data)[0][2]  # 請求xxxx  bms_response = urllib.request.Request(bms_url, headers=header)  bms_webpage = urllib.request.urlopen(bms_response)  # 返回的系統后臺頁面  bms_data = bms_webpage.read().decode()   # 對xx狀態進行修改  update_url = "http://xxx.xxx.xxx/xxx/xxx/xxx/xxx/{index}".format(index=index)  update_response = urllib.request.Request(update_url, headers=header)  update_webpage = urllib.request.urlopen(update_response)  update_data = update_webpage.read().decode()  print(update_data) 

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


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霸州市| 东阿县| 响水县| 黄冈市| 喀什市| 新郑市| 正安县| 迁安市| 临沧市| 临汾市| 济宁市| 谢通门县| 岳西县| 新宁县| 会同县| 忻州市| 白城市| 七台河市| 图木舒克市| 盱眙县| 天祝| 陕西省| 陆良县| 曲周县| 焉耆| 昌宁县| 开封市| 昌黎县| 江西省| 敦化市| 搜索| 贵德县| 湘乡市| 周口市| 丘北县| 岑溪市| 恩施市| 崇文区| 丰顺县| 台北县| 商南县|