Pythonで各大学を登り、弟の大学選びを可視化し、弟は牛を叫ぶ。
一、urlを取得する
中国の教育を開いて、
ページを更新し、
データは
要求方式は
二、要求を送信する
urlを取得すると、私たちは
まずデータを
六、データ展示
七、データの可視化
1.各省市地区の大学数分布柱図:
地図
各省の高校レベル分布
全国高校のタイプ分布
上のデータがあったら、全国の高校について知っていますか?
ここでは、Pythonで各大学を登り、弟の大学選びを視覚化します。弟が牛Xを叫ぶ文章を紹介しました。Python関連のデータを登り、可視化しました。私たちの以前の文章を検索したり、次の関連記事を見たりしてください。これからもよろしくお願いします。
中国の教育を開いて、
F12
を押して、上部はNetWork
を選択して、XHR
を選択します。ページを更新し、
url
を観察し、Reponse
の解析によって本物のurl
が見つかった。https://api.eol.cn/gkcx/api/データは
Json
に記憶されている。Headers
をクリックして、要求パラメータを確認してください。要求方式は
POST
です。二、要求を送信する
urlを取得すると、私たちは
requests
シミュレーションブラウザを利用して要求を送信し、Json
のデータを取得することができます。コードは以下の通りです
#
import numpy as np
import pandas as pd
import requests
import json
from fake_useragent import UserAgent
import time
#
def get_one_page(page_num):
# URL
url = 'https://api.eol.cn/gkcx/api/'
# headers
headers = {
'User-Agent': UserAgent().random,
'Origin': 'https://gkcx.eol.cn',
'Referer': 'https://gkcx.eol.cn/school/search?province=&schoolflag=&recomschprop=',
}
# data
data = {
'access_token': "",
'admissions': "",
'central': "",
'department': "",
'dual_class': "",
'f211': "",
'f985': "",
'is_dual_class': "",
'keyword': "",
'page': page_num,
'province_id': "",
'request_type': 1,
'school_type': "",
'size': 20,
'sort': "view_total",
'type': "",
'uri': "apigkcx/api/school/hotlists",
}
#
try:
response = requests.post(url=url, data=data, headers=headers)
except Exception as e:
print(e)
time.sleep(3)
response = requests.post(url=url, data=data, headers=headers)
三、Jsonデータを解析するResponse
によって返されたJson
フォーマットでは、私達が欲しい内容を解析しました。コードは以下の通りです。
#
school_data = json.loads(response.text)['data']['item']
#
school_name = [i.get('name') for i in school_data]
#
belong = [i.get('belong') for i in school_data]
#
dual_class_name = [i.get('dual_class_name') for i in school_data]
# 985
f985 = [i.get('f985') for i in school_data]
# 211
f211 = [i.get('f211') for i in school_data]
#
level_name = [i.get('level_name') for i in school_data]
#
type_name = [i.get('type_name') for i in school_data]
#
nature_name = [i.get('nature_name') for i in school_data]
#
view_total = [i.get('view_total') for i in school_data]
#
province_name = [i.get('province_name') for i in school_data]
#
city_name = [i.get('city_name') for i in school_data]
#
county_name = [i.get('county_name') for i in school_data]
#
df_one = pd.DataFrame({
'school_name': school_name,
'belong': belong,
'dual_class_name': dual_class_name,
'f985': f985,
'f211': f211,
'level_name': level_name,
'type_name': type_name,
'nature_name': nature_name,
'view_total': view_total,
'province_name': province_name,
'city_name': city_name,
'county_name': county_name,
})
return df_one
四、Excelに預け入れますまずデータを
Pandas
に保存して、データ分析をしてからExcel
に書き込みます。
#
def get_all_page(all_page_num):
#
df_all = pd.DataFrame()
#
for i in range(all_page_num):
#
print(f' {i + 1} ')
#
df_one = get_one_page(page_num=i+1)
#
df_all = df_all.append(df_one, ignore_index=True)
#
time.sleep(np.random.uniform(2))
return df_all
#
df_school = get_all_page(all_page_num=143)
#
df_school.to_excel('./data/ .xlsx', index=False)
五、運転コード六、データ展示
七、データの可視化
1.各省市地区の大学数分布柱図:
地図
各省の高校レベル分布
全国高校のタイプ分布
上のデータがあったら、全国の高校について知っていますか?
ここでは、Pythonで各大学を登り、弟の大学選びを視覚化します。弟が牛Xを叫ぶ文章を紹介しました。Python関連のデータを登り、可視化しました。私たちの以前の文章を検索したり、次の関連記事を見たりしてください。これからもよろしくお願いします。