前言
本文所用的方法十分简(ruo)易(zhi),非常适用想用Python做点有趣的功能的Python初学者。
先上一波效果图
那么这到底是怎么实现的呢?其实说起来很简单,我们只需要写一个爬虫就行啦!选择哪个网站作为爬取对象十分关键。作为Python的初学者,选择谷歌翻译?还是网易有道翻译?NO!这些网站都有很强大的反爬虫机制,光是写反爬虫的代码就已经比较复杂了。所以说,我们选择一个良心网站——沪江小D!
首先打开沪江小D并按F12进入开发者模式(我是用的是Chrome浏览器)
en
文件。请求网站Request URL
是https://dict.hjenglish.com/v10/dict/translation/cn/en
,请求方法Request Method
是POST
。再往下拉,发现Form Data
中的content
就是原本我们想要翻译的内容。再点击Preview
,发现其中就有经过翻译后的文本。这下子经过分析,可以开始写代码啦!
代码如下
import request
def cn_en(sen):
# 中译英
url = r'https://dict.hjenglish.com/v10/dict/translation/cn/en'
data = {'content': sen}
tran_sen = requests.post(url, headers=HEADERS, data=data).json()['data']['content'] # 提取json文件
return tran_sen
if __name__ == "__main__":
print(cn_en("我正在学习Python"))
我们使用的库著名的是Requests
,它在写一些轻量级的爬虫时非常方便!代码中的data
的content
就是我们想要翻译的内容。值得一提的是,在进行爬取的时候我们的方法是post
而不是get
。至于是post
还是get
,这取决网站本身。
整个代码甚至连20行都不满就可以实现一个方便的功能,是不是效率非常高?如果你要实现英译中或者其他语言的翻译,只要更改url
即可!
网友评论