日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python爬取学校教务管理系统_python requests模拟登陆正方教务管理系统,并爬取成绩...

發布時間:2024/3/24 python 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python爬取学校教务管理系统_python requests模拟登陆正方教务管理系统,并爬取成绩... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近模擬帶賬號登陸,查看了一些他人的博客,發現正方教務已經更新了,所以只能自己探索了。

登陸:

通過抓包,發現需要提交的值

需要值lt,這是個啥,其實他在訪問登陸頁面時就產生了

session=requests.Session()

response= session.get(login_url, headers=header)

cookies=response.cookiesfor c incookies:

cookie= c.name + ‘=‘ +c.value

print(‘cookie-get:‘ +cookie)

selector=etree.HTML(response.text)

token= selector.xpath(‘//input[@name="lt"]/@value‘)[0] # 解析出登陸所需的lt信息

print(token)

得到lt的值,加入到自己創建的表單中

根據上面抓包工具中需要的值,創建所需表單

login_data={‘useValidateCode‘: ‘0‘,‘isremenberme‘: ‘1‘,‘ip‘:‘‘,‘username‘: username,‘password‘: password,‘losetime‘: ‘30‘,‘lt‘: token,‘_eventId‘: ‘submit‘,‘submit1‘:‘‘}

post請求登陸:

response = session.post(login_url, data=login_data, headers=header)print(response.status_code)

我們成功了,哈哈哈,很開心!

進入了主頁面:

這是我們登進的頁面,要爬取成績,成績在教務系統中,細心觀察

get下鏈接:http://******/xs_main.aspx?xh=***&type=1

response = session.get(main_url, headers=header)print(response.cookies)print(response.status_code)print(BeautifulSoup(response.text, ‘lxml‘))

response.status_code返回200,以為成功了?打印一下

額!難受,鬼刀一開,看不見........他竟然返回的是登陸界面?

究竟是什么問題呢,我懷疑是cookie:

因為

print(response.cookies)打印的值是:

瀏覽器訪問抓包看下

啊嘞嘞,why?

查看其他請求,在Cookie中竟然都沒有創建過ASP.NET_SessionID

那怎么辦呢?

那我自己寫一個吧:

requests.utils.add_dict_to_cookiejar(session.cookies,{"ASP.NET_SessionId":"0ftp4drb5uar0r55urffkobr"})

哎呀,成功了。開心,不過似乎ASP.NET_SessionId有時效性。

不管了,也不知道為啥Session.Cookies得不到所需要的Cookie,先不管了,各位大佬,發現問題的話,或者有啥好的解決辦法麻煩告訴下!拜謝

代碼地址:https://github.com/JackyWjx/HNCU

原文:https://www.cnblogs.com/xr210/p/10335795.html

總結

以上是生活随笔為你收集整理的python爬取学校教务管理系统_python requests模拟登陆正方教务管理系统,并爬取成绩...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。