缘起
看到有人在简书里面谈起从事兼职的事情,忽然之间就觉得自己不能放下曾经学过的知识,特别是目前不常用的语言——英语。和中文一样,常用的字词应该是不多的,而本身,我又对编程略感兴趣,所以,看编程文档学英语结合起来,其实也是不错的,兴趣是学习的动力嘛。
障碍
太久没有看英语,很多单词啃不动,所以,需要借助工具来帮忙。
环境介绍
Windows XP Professional 32位 + Python2.7.x
结果
#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests,re
from bs4 import BeautifulSoup
def en2zh(word):
url = 'http://fanyi.baidu.com/v2transapi'
headers = {
'Host':'fanyi.baidu.com',
'Content-Length':'65',
'Accept':'*/*',
'Origin':'http://fanyi.baidu.com',
'X-Requested-With':'XMLHttpRequest',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36',
'Content-Type':'application/x-www-form-urlencoded; ',
'Referer':'http://fanyi.baidu.com/',
}
data = {
'from':'en',
'to':'zh',
'query':word,
'transtype':'realtime',
'simple_means_flag':'3',
}
r = requests.post(url,headers=headers,data=data)
#print r.json()
zh = r.json()['trans_result']['data'][0]['dst']
en = word
print en ,'--->' ,zh
def get_words(url):
headers = {'User-Agent': "Mozilla/5.0 (Windows NT 5.1; rv:17.0) Gecko/20100101 Firefox/17.0"}
r = requests.get(url = url, headers = headers)
Response = r.content
soup = BeautifulSoup(Response, 'html.parser')
content = soup.body.get_text()
parse_word_reg = re.compile('([a-zA-Z]{3,})')
words = parse_word_reg.findall(content)
words = list(set(words)) #set() 去掉重复的
return words
if __name__ == '__main__':
url = 'http://webpy.org/docs/0.3/templetor'
words = get_words(url)
for word in words:
en2zh(word)
运行结果
结语
第一次用简书和Markdown写,感觉好陌生 ^ _^