成都创新互联网站制作重庆分公司

怎么用python做翻译程序

这篇文章主要介绍“怎么用python做翻译程序”,在日常操作中,相信很多人在怎么用python做翻译程序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用python做翻译程序”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联建站主要从事网站建设、网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务剑川,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

首先打开有道翻译的网址:

”http://fanyi.youdao.com/“

怎么用python做翻译程序

按 f12 打开检查工具

点击element浏览了一下

发现html里并没有我们想要的内容

说明它不是静态加载的

那应该是经过动态Ajax加载的

所以点击Network,开始它长这样的

怎么用python做翻译程序

你会看到啥都没有

按F5刷新一下就会出现很多网址或文件

这些文件是有道翻译网页的组成部分

从上到下依次加载

不过这里不要刷新

不然待会还要花时间找对应的信息

1处随便写些内容

然后点击XHR(这个先点后点都没关系)

然后会在3处跳出一个网址

点击headers会看见第4处的内容

怎么用python做翻译程序

点击preview

会发现里面有我们要翻译的内容和结果

看来我们找对了方向了

它是以json格式进行存储数据的

这对于我们提取数据会更加方便

怎么用python做翻译程序

那居然知道网址后就是提取数据

那我们要怎么提取呢

回到我们的headers,在第4处有个网址

这个网址才是真正存储我们需要的数据的网址

继续往下看

找到 Request Method

原来它是post方式对服务器进行请求的

那我们要提交什么数据呢

继续往下看

在From data里发现了我们想要翻译的内容

看来以下这段就是我们需要提交的数据了

怎么用python做翻译程序

这么多数据我们该怎么获得呢

别急~

我们试着翻译其他内容

看看有哪些值会变

怎么用python做翻译程序

经过对比后发现

有四个值发生了变化

分别是”i,salt,sign,ts"这四个

i是我们要翻译的内容

另外三个不知道是什么

后面发现这三个不用管也可以

知道我们的目标在哪后

就是写代码进行提取数据了

因为是json格式

相当于字典

所以很好获取

因为代码不是很多

也不会很难理解

所以有些方面我就不细讲了

直接上代码

import requestsurl = "http://fanyi.youdao.com/translate?smartresult=dict&smartresult=rule"data = {"i":input("输入要翻译的内容:"),"from": "AUTO","to": "AUTO","smartresult": "dict","client": "fanyideskweb","bv": "146ae0587a435b36d5e7ac4d9b08bde6","doctype": "json","version": "2.1","keyfrom": "fanyi.web","action":" FY_BY_REALTlME"}req = requests.post(url,data = data) #以post的方式js = req.json()result = js["translateResult"][0][0]["tgt"]print(result)

requests对象有个向服务器请求有两种方法

一种是get请求

一种就是今天这种post请求

这两种有什么区别呢?

get请求是不用提交表单的

也就是不用提交额外的数据

一般用于下载静态网页之类的

post请求就是需要我们提供一些数据给服务器的

比如说登陆就是用post请求

然后post方法里有个data参数

用来存储提交的数据

它是以字典的数据结构进行存储的

因为我们要从json格式里提取数据

所以我们用json方法将下载后的数据转换为json格式

最后就跟提取字典一样操作就OK了

到此,关于“怎么用python做翻译程序”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


本文题目:怎么用python做翻译程序
当前地址:http://cxhlcq.com/article/pijgjg.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部