python爬取网易词典,利用Python3和Charles爬取有道词典

from tkinter import *

import urllib.parse

import urllib.request

def youdao(words):

# 构建url

url = 'http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule'

# 构建请求头

headers = {

"User-Agent" : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:59.0) Gecko/20100101 Firefox/59.0'

}

# 构建请求体

format_data = {

'i': words,

'from':'AUTO',

'to':'AUTO',

'smartresult':'dict',

'client':'fanyideskweb',

'salt':'1526368137702',

'sign':'f0cd13ef1919531ec9a66516ceb261a5',

'doctype':'json',

'version':'2.1',

'keyfrom':'fanyi.web',

'action':'FY_BY_REALTIME',

'typoResult':'true'

}

# 进行url编码

format_data = urllib.parse.urlencode(format_data).encode("utf-8")

# 获取request文件(传入了data参数,就是post请求)

request = urllib.request.Request(url, data = format_data, headers = headers )

# 打开请求文件

response = urllib.request.urlopen(request)

# 读取文件内容

content = response.read()

content = eval(content)

ret = content["translateResult"][0][0]['tgt']

print(ret)

return ret

# 主程序

root = Tk()

# 设置标题

root.title("呆瓜词典")

# 设置主窗口大小

root.geometry("320x150")

# 可变大小

root.resizable(width=False, height=True)

# 第一排输入框 输入查询的内容

# 左边是一个标签

l1 = Label(root, text = '查询内容', bg = "yellow", font = (12), height = 1, width = 8)

l1.place(x = 20,y = 20)

var1 = StringVar()

input_text = Entry(root, textvariable = var1)

input_text.place(x = 100, y = 20)

# 第二排显示框 显示查询的结果

# 左边是一个标签

l2 = Label(root, text = '查询结果', bg = "yellow", font = (12), height = 1, width = 8)

l2.place(x = 20, y =60)

var2 = StringVar()

output_text = Entry(root, textvariable = var2)

output_text.place(x = 100, y =60)

# 调用youdao函数,传进要翻译的内容

def func():

words = var1.get()

if words:

# print(words)

result = youdao(words)

var2.set(result)

# 添加一个按钮

b = Button(root, text = "查询", command = func)

b.place(x = 170, y = 100)

# 运行主程序

root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值