命令行字典
作为一个有追求的程序员,当然想把一切操作通过键盘来完成,让手指保持在键盘上。那么,如何做到用键盘来查询英文单词呢?突发奇想在命令行里用python脚本来爬取有道词典的查询结果,使用requests + BeautifulSoup
实现,效果还不错。
代码
代码放在了heLomaN@Github
#!/usr/bin/env python
# coding=utf-8
import requests as rq
from BeautifulSoup import BeautifulSoup as bs
def query(word):
query_dict = {'le':'eng', 'q':word}
r = rq.get('http://dict.youdao.com/search', query_dict)
soup = bs(r.text)
trans_div = soup.find('div', {'class':'trans-container'})
#print trans_div
interpretations = trans_div.findAll('li')
for elem in interpretations:
print '\t', elem.string
if __name__ == '__main__':
word = raw_input('Query:\t')
while(word != 'q'):
query(word)
word = raw_input('Query:\t')
- 执行脚本后,输入待查询单词即可,输入
q
可退出执行 - 机制非常简单,构造查询url,获得html后找到对应于释义的div,打印其中内容