爬取高考志願填報系統(https://gkcx.eol.cn/)的所有學校
(一)、第一種方法
1.分析請求
2.構造url
base_url='https://gkcx.eol.cn/gkcx/api?'
data={
"uri": "gksjk/api/school/hotlists",
"province_id": "",
"type": "",
"size": 20,
"page": page,
"f211": "",
"f985": "",
"dual_class": "",
"is_dual_class": "",
"admissions": "",
"central": "",
"department": "",
"school_type": "",
"keyword": "",
"request_type": 1,
"sort": "view_total"
}
url=base_url+urlencode(data)
結果:
https://gkcx.eol.cn/gkcx/api?uri=gksjk%2Fapi%2Fschool%2Fhotlists&province_id=&type=&size=20&page=1&f211=&f985=&dual_class=&is_dual_class=&admissions=¢ral=&department=&school_type=&keyword=&request_type=1&sort=view_total
打開這個url:
解析json:
3.提取數據:
items=json.get('data').get('item')
item_list=[]
for item in items:
a_dict={}
a_dict['name']=item.get('name')
a_dict['type']=item.get('dual_class_name')
a_dict['origin']=item.get('province_name')
item_list.append(a_dict)
結果:
[{'name': '上海理工大學', 'type': '', 'origin': '上海'}, {'name': '上海對外經貿大學', 'type': '', 'origin': '上海'}, {'name': '重慶郵電大學', 'type': '', 'origin': '重慶'}, {'name': '重慶郵電大學移通學院', 'type': '', 'origin': '重慶'}, {'name': '重慶師範大學涉外商貿學院', 'type': '', 'origin': '重慶'}, {'name': '重慶工商大學融智學院', 'type': '', 'origin': '重慶'}, {'name': '黑龍江東方學院', 'type': '', 'origin': '黑龍江'}, {'name': '重慶電子工程職業學院', 'type': '', 'origin': '重慶'}, {'name': '黑龍江外國語學院', 'type': '', 'origin': '黑龍江'}, {'name': '廣州工商學院', 'type': '', 'origin': '廣東'}, {'name': '河北環境工程學院', 'type': '', 'origin': '河北'}, {'name': '重慶交通職業學院', 'type': '', 'origin': '重慶'}, {'name': '河北旅遊職業學院', 'type': '', 'origin': '河北'}, {'name': '承德護理職業學院', 'type': '', 'origin': '河北'}, {'name': '河南師範大學新聯學院', 'type': '', 'origin': '河南'}, {'name': '廈門大學', 'type': '雙一流', 'origin': '福建'}, {'name': '武漢大學', 'type': '雙一流', 'origin': '湖北'}, {'name': '四川大學', 'type': '雙一流', 'origin': '四川'}, {'name': '北京大學', 'type': '雙一流', 'origin': '北京'}, {'name': '中山大學', 'type': '雙一流', 'origin': '廣東'}]
4.源碼
(二)、第二種方法:
源碼聯繫博主