- 导入库:在python3以后,sys不在支持setdefauletencoding,我理解就是自动识别字符格式了(也不知道对不对)
#-*- coding:utf-8 -*
from bs4 import BeautifulSoup
import requests
import importlib
import sys
importlib.reload(sys)
#
# sys.setdefaultencoding('utf8'):在python3以后,sys不支持setdefaultencoding
- 定义函数,判断输入的是中文还是英文(中英互译和英中互译对应不同的url)
def check_chinese(check_str):
for ch in check_str:
print(ch)
if u'\u4e00' <= ch <= u'\u9fff':
return True
return False
- 输入要查的单词或中文,打开有道链接,定位输出结果
word=str(input('输入要翻译的单词:'))
if check_chinese(word):
url=url='http://www.youdao.com/w/'+word
web_data = requests.get(url).text
soup = BeautifulSoup(web_data, 'lxml')
meaning = soup.select('#phrsListTab > div.trans-container > ul')
else:
url='http://www.youdao.com/w/eng/'+word
web_data = requests.get(url).text
soup = BeautifulSoup(web_data, 'lxml')
meaning = soup.select('#phrsListTab > div.trans-container > ul > li')
print(url)
for i in meaning:
print(i.get_text())