import requests import re import json import selenium from bs4 import BeautifulSoup import tkinter as tk url = 'http://pay.ntu.edu.cn/querySydl' session = requests.Session() # 创建session对象 # 第一次使用session,捕获请求cookie page_text = session.get(url=url).text print(page_text) params = { 'room_id': '32143', # 根据实际情况设置 'loudong_id': '325', # 根据实际情况设置 'xiaoqu_id': '2', # 根据实际情况设置 'factorycode': 'E017', # 根据实际情况设置 'sign': 'zhuxiaoqu' # 这里应该是计算出的签名值 } headers = { "Accept":"application/json, text/javascript, */*; q=0.01", "Accept-Encoding":"gzip, deflate", "Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6", "Connection":"keep-alive", "Content-Type":"application/x-www-form-urlencoded; charset=UTF-8", "Cookie":"JSESSIONID=D9C56216184F8AED4C7514409D03685C", "Host":"pay.ntu.edu.cn", "Origin":"http://pay.ntu.edu.cn", "Referer":"http://pay.ntu.edu.cn/MNetWorkUI/elecdetails5118E017", "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0" } resp = requests.post(url, headers=headers, params=params) print(resp.status_code) print(resp.text) # 创建主窗口 window = tk.Tk() # 创建文本框 text_box = tk.Text(window) text_box.pack() # 设置文本框内容 text_box.insert(tk.END, resp.text) # 运行窗口 window.mainloop()
这段代码是一个Python脚本,它主要做了以下几件事情:
-
导入所需的Python库,包括requests、re、json、selenium、BeautifulSoup和tkinter。
-
定义了一个URL
http://pay.ntu.edu.cn/querySydl
。 -
创建一个requests的Session对象。
-
使用Session对象发送GET请求获取页面内容,并打印出来。
-
定义了一个params字典,包含了一些查询参数如room_id、loudong_id、xiaoqu_id、factorycode和sign。
-
定义了一个headers字典,包含了发送POST请求时需要的头部信息。
-
使用requests.post方法发送POST请求,将params作为查询参数,headers作为请求头,并打印出响应状态码和响应文本内容。
-
创建一个tkinter主窗口。
-
在主窗口中创建一个文本框Text控件。
-
将前面POST请求获取的响应文本内容插入到文本框中。
-
运行窗口的主循环以显示窗口。
这个简单的爬虫代码仅供参考,模拟登陆参数得在开发者工具中获得随时查看。