-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path爬馆藏.py
48 lines (40 loc) · 1.46 KB
/
爬馆藏.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import requests
import re
def esu(bookid):
url = "https://findcumt.libsp.com/find/physical/groupitems"
payload = {"page":1,"rows":20,"entrance":None,"recordId":bookid,"isUnify":True}
headers = {
'Accept': 'application/json, text/plain, */*',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6',
'Content-Length': '71',
'Content-Type': 'application/json;charset=UTF-8',
'groupCode': '200069',
'Referer': 'https://findcumt.libsp.com/',
'Cookie': 'SameSite=None'
}
response = requests.request("GET", url, headers=headers, json=payload)
return response.text
def search_location(result):
location=re.findall(',"locationName":(.+?|null),',result)
return location
def search_barcode(result):
barcode=re.findall(',"barcode":(.+?|null),',result)
return barcode
def search_attribution(result):
attribution=re.findall(',"processType":(.+?|null),',result)
return attribution
def s_id(result):
bookid=re.findall(',"processType":(.+?|null),',result)
return bookid
cout=input()
result=esu(cout)
location=search_location(result)
barcode=search_barcode(result)
attribution=search_attribution(result)
bookid=s_id(result)
sum=[]
for i in range(len(bookid)):
temporary={"书的id":bookid[i],"条码":barcode[i],"放在哪里":location[i],"是否在架":attribution[i],"这是第几条馆藏信息":i+1}
sum.append(temporary)
print(sum)