使用Python爬取学校空教室信息

本示例演示如何使用Python的requests库获取学校网站的空教室信息,并使用JSON解析技术分析数据,提取可用的教室和时间信息。

1. 导入库

import requests

2. 设置请求参数

cookies = {
    'JSESSIONID': '979EB8A4FB45297AA14D52989E787062',
}
coursetime = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12']

response = requests.get('http://jwcwx.nepu.edu.cn/free-class-room/classroomUsedData?jwCode=&jzwdm=1004993&rq=2023-04-08', cookies=cookies)
res_json = response.json()

3. 解析JSON数据

# {'dm': '2720646', 'jcdm': '05060708', 'jcdm2': '05,06,07,08', 'jxcdmc': '1D-401'}

for item in res_json['data']:
    used_jc = item['jcdm2'].split(',')
    for time in coursetime:
        if time not in used_jc:
            print('教室:{},可以上课时间:{}节'.format(item['jxcdmc'], time))

代码解释:

  • requests.get() 发送GET请求到目标网址,获取网页内容。
  • response.json() 将网页内容解析为JSON格式数据。
  • res_json['data'] 获取JSON数据中的'data'字段,包含所有教室信息。
  • 循环遍历每个教室的'jcdm2'字段,提取已占用的节次。
  • 循环遍历每个节次,判断是否在已占用的节次范围内,输出空闲教室信息。

注意:

  • 请将代码中的URL和Cookie信息替换为您目标网站的实际信息。
  • 为了避免对网站造成过大压力,请控制爬取频率。
  • 请遵守网站的robots协议,并注意数据隐私问题。
Python爬取学校空教室信息:使用requests库获取并解析JSON数据

原文地址: https://www.cveoy.top/t/topic/nem0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录