获取互联网+大赛实时排名写入Excel表格

运行图
在这里插入图片描述存入图
在这里插入图片描述

# -*- coding = utf -8 -*-
# @Time : 2021/6/20 11:48
# @Author : hair
import requests
import json
import pandas as pd

def get_json():
	headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.72 Safari/537.36'}
	url_id = 'https://iindexs.com/pptApi/zw/score/task?taskId=1416282154563772418'
	res = requests.get(url_id,headers=headers).text
	res = json.loads(res)
	return res

def choice_group(group,res):
	# 组
	ids = []
	for i in range(11):
		name = res['data'][i]['name']
		name = list(name)
		for j in name:
			try:
				int(j)
				name.remove(j)
			except:
				pass
		name = ''.join(name)
		print(name)
		if group == name:
			ids.append(res['data'][i]['id'])
	print(ids)
	return ids

def get_data(ids):
	p_name = []
	unit_name = []
	score = []
	all_datas = []# 存所有数据
	for i in ids:
		url_group = f'https://iindexs.com/pptApi/zw/score/group?groupId={i}'
		res1 = requests.get(url_group).text
		res1 = json.loads(res1)
		all_data = res1['data']
		# print(all_data)
		all_datas += all_data

	n = len(all_datas)
	for i in range(n):
		if all_datas[i]['score'] != None:
			all_datas.append(all_datas[i])
		else:
			pass
	all_datas = all_datas[n:]
	all_datas = sorted(all_datas,key=lambda all_datas : all_datas['score'],reverse=True)

	# print(all_datas)
	for j in range(len(all_datas)):
		p_name.append(all_datas[j]['projectName'])
		unit_name.append(all_datas[j]['unitName'])
		score.append(all_datas[j]['score'])

	datas = {'projectName' : p_name,'unitName' : unit_name,'score' : score}
	# print(len(datas['unitName']))
	# print(len(datas['projectName']))
	df = pd.DataFrame(datas)
	df = df.set_index('projectName')
	df.to_csv(r'.\benchuang.csv',mode='w')
	input('运行结束,按任意键关闭')


data0 = get_json()

li = ['本科生创意组','研究生创意组','高教主赛道创业组','红旅赛道创意组','红旅赛道公益组','红旅赛道创业组']
print(','.join(li))
group = input('请根据以上名称输入组别:')
while group not in li:
	print('输入错误,请重新输入')
	group = input('请根据以上名称输入组别:')

ids = choice_group(group,data0)

get_data(ids)

可用pyinstaller打包成exe文件,用虚拟环境还300多M,太大了。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值