import requests
import csv
from lxml import html
# from bs4 import BeautifulSoup
etree = html.etree
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36 QIHU 360SE/13.1.5390.0'}
lione = []
def one(jie):
url = f"https://www.iciba.com/word?w={jie}"
dan = requests.get(url, headers=headers).text
dan1 = etree.HTML(dan)
return dan1
'''
获取源代码
:return:
'''
def two(dan1, ftt):
# lione = []
try:
chi = dan1.xpath('//ul[@class="Mean_symbols__fpCmS"]/li[1]/text()')[1]
chiyi = dan1.xpath('//ul[@class="Mean_part__UI9M6"]/li/div/span/text()')[0]
aa = {}
aa['单词'] = ftt
aa['单词意思'] = chiyi
aa['单词音标'] = chi
lione.append(aa)
except:
# tom = "no"
return 'no'
# print(lione)
'''
数据解析
:return:
'''
def three():
with open('dancitt.csv', 'w', encoding='utf-8', newline='') as f:
# write = (f, fieldnames=['单词', '单词意思', '单词音标'])
write = csv.DictWriter(f, fieldnames=['单词', '单词意思', '单词音标'])
write.writeheader()
write.writerows(lione)
'''
数据存储
:return:
'''
def five():
#进入背诵模式
f = open('dancitt.csv', mode='r', encoding='utf-8')
# f = open('json.data', mode="w", encoding='utf-8')
f.seek(0)
# print(f.read())
li = f.read()
res = li.split(',')[3::2]
print(res)
'''
:return:
'''
def four():
for i in range(100):
urlf = input("请输入想要查询的单词:")
if urlf == "0":
three()
break
if urlf == "1":
five()
break
first = one(urlf)
tom = two(dan1=first, ftt=urlf) #拿到一次的数据
if tom == "no":
print('您输入的有误请重新输入!(#^.^#)')
continue
# print(second)
print(lione)
'''
主函数
:return:
'''
four()
单词查词搜索并保存的方法-Python自制!
最新推荐文章于 2026-01-26 02:56:41 发布

1163

被折叠的 条评论
为什么被折叠?



