环境python3.5
额外库bs4
话不多说,贴代码,任何问题请加wechat : csygr5251314
# THIS FILE IS PART OF Mr.Guo WULIAO.PY FILES
# check.py - TO FIND NAEM OR FIND PLACE OF CUFE LIBRARY
# THIS PROGRAM IS A FREE SOFTWARE
# YOU SHOULD HAVE RECEIVED A COPY OF LICENSE, IF NOT,YOU SHOULD ADD QQ:3206283501
# @AUTHOR:
# Copyright (c) CUFE COMPUTER 15
# Copyright (c) 2017 Mr.Guo
# WANTING FOR A GIRL FRIEND ADD QQ:3206283501
#import lib
from urllib import request
import datetime
from bs4 import BeautifulSoup as bs
import re
import time
import string
import json
#get date
now = datetime.datetime.now()
today = now.strftime('%Y-%m-%d %H:%M:%S')[0:10].replace('-','')
#find room id
url = "http://10.12.162.31/ClientWeb/xcus/ic2/Default.aspx"
content = request.urlopen(url).read()
bs_obj = bs(content,"html.parser")
room_url_list = str(bs_obj.findAll("ul",{"class":"it_list nav"})[0])
pattern = re.compile('url=".*?"')
url_list = pattern.findall(room_url_list)
#append url
result_list = []
for url in url_list:
url = url.replace("url=",'').replace('"','')
inner_pattern = re.compile('id=\d+')
room_id = inner_pattern.findall(url)[0].replace('id=','')
final_url = "http://10.12.162.31/ClientWeb/pro/ajax/device.aspx?dev_order=&kind_order=&classkind=1&display=cld&md=d&class_id=%s"%room_id + "&purpose=&cld_name=default&date=%s"%today + "&act=get_rsv_sta&_=%s"%str(time.time())[0:10]
result_list.append(final_url)
#get content function
def get_content(room_url):
content = request.urlopen(room_url).read()
json_content = json.loads(content)
#print(json_content)
room_details = json_content['data']
for room in room_details:
room_kind = room['kindName']
print(room_kind,end = ' ')
room_name = room['name']
print(room_name)
room_ts = room['ts']
for details in room_ts:
start_time = details['start']
end_time = details['end']
owner = details['owner']
print("申请人:%s"%owner," 开始时间:%s"%start_time," 结束时间:%s"%end_time)
#mian function
choice = input('''enter you choice
a.Small seminar room
b.Seminar room
c.Big seminar room
d.Special seminar room
d.Multimedia seminar room
''').lower()
lower_list = list(string.ascii_lowercase)
for i in range(len(lower_list)):
if lower_list[i] == choice:
get_content(result_list[i])
效果图: