python英语单词测试小程序-创新互联

博主爬取了扇贝英语网,并制作了一个英语单词测试的小程序,还能生成错词本,一起来看下代码吧~

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名虚拟主机、营销软件、网站建设、雁山网站维护、网站推广。
import requests

#扇贝网爬虫,获取英语单词
category_res=requests.get('https://www.shanbay.com/api/v1/vocabtest/category/?_=1566889802182')
category_json=category_res.json()
category_data=category_json['data']

#选择出题范围
for i in range(10):
    print(str(i+1)+'.'+category_data[i][1])
number=int(input('请选择出题范围:'))

url='https://www.shanbay.com/api/v1/vocabtest/vocabularies/'
headers={
    'Referer': 'https://www.shanbay.com/vocabtest/',

    }
params={
    'category':category_data[number-1][0],
    '_': '1566889452889'
    }

res=requests.get(url,headers=headers,params=params)
jsonres=res.json()

vacabularies=jsonres['data']
knows=[]
unknows=[]
print()
print('以下单词你是否认识?')
n=0
z=0

b=open('错词本.txt','a+')
b.write('你不认识的单词有:\n')

#测试开始,挑选认识的单词
for vacabulary in vacabularies:
    n=n+1
    vacabu=vacabulary['content']
    print('第'+str(n)+'个:'+vacabu)
    index=vacabularies.index(vacabulary)

    while True:
        judge=input('认识选Y,不认识选N:')
        if judge=='Y':
            knows.append(index)
            break
        elif judge=='N':
            unknows.append(index)
            z=z+1
            b.write(str(z)+'.'+vacabu+'\n')
            break
        else:
            print('请输入Y或者N')
print()           
print('测试结束,以下是测试结果:')
print('认识'+str(len(knows))+'个单词,不认识'+str(len(unknows))+'个单词。')
print('你可真棒!')
print()

right=[]
wrong=[]

#选择正确的词义
b.write('你记错的单词有:\n')
m=0
for know in knows:
    vacabulary_know=vacabularies[know]
    word=vacabulary_know['content']
    print()
    print(word)

    definitions=vacabulary_know['definition_choices']

    for i in range(4):
        print(str(i+1)+'.'+definitions[i]['definition'])
    choice=int(input('单词测试,请选择正确的词义:'))
    rank=definitions[choice-1]['rank']
    if rank==vacabulary_know['rank']:
        right.append(word)
    else:
        wrong.append(word)
        m=m+1
        b.write(str(m)+'.'+word+'\n')

print()
print('测试结果出来啦!')

print('认识的单词里掌握了这几个:')
print(right)
print()
print('没掌握的是这几个:')
print(wrong)

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


标题名称:python英语单词测试小程序-创新互联
文章出自:http://ybzwz.com/article/ddeiod.html