admin管理员组

文章数量:1130349

最近在学python,觉得这个挺有意思,对于以后学爬虫很有帮助。
实现这个功能需要以下几个步骤:

一、打开有道翻译网页。

我是用谷歌浏览器打开的。

二、打开元素检查。

先打开检查,再输入要翻译的 文字,这样就能看到network选项夹里多了几个东西,找到XHR格式的,然后打开它。

三、寻找URL以及输入的格式。

打开之后主要看以下两部分
上图第一个就是翻译的URL,复制即可。下面这张图很重要,表示我们发送数据的格式,如果不一致的话,网页是不会给我们反馈的。

4、代码如下,需要根据上图信息修改。

import urllib.request
import urllib.parse
import json

def translation():
            url = 'http://fanyi.youdao/translate?smartresult=dict&smartresult=rule'
            data={}
            data['i']= content
            data['from']= 'AUTO'
            data['to']='AUTO'
            data['smartresult'] ='dict'
            data['client']= 'fanyideskweb'
            data['salt']= '16216671697475'
            data['sign']= '4b12fe85554d481a2d40331d2b07847f'
            data['ts']= '1621667169747'
            data['bv']= 'cda1e53e0c0eb8dd4002cefc117fa588'
            data['doctype']= 'json'
            data['version']= '2.1'
            data['keyfrom']= 'fanyi.web'
            data['action']= 'FY_BY_REALTlME'
            data = urllib.parse.urlencode(data).encode('utf-8')#data信息要和发送的信息格式一致
            response = urllib.request.urlopen(url,data)
            html = response.read().decode('utf-8')
            target =json.loads(html)
            print("翻译结果;%s" % (target['translateResult'][0][0]['tgt']))#[0]的作用是定位‘tgt’在片中的位置

while 1:
    content = input("请输入要翻译的内容(输入q退出程序):")
    if content=='q':
         quit()
    else:
        translation()

大功告成,觉得不错的可以三连一下,感谢各位!

最近在学python,觉得这个挺有意思,对于以后学爬虫很有帮助。
实现这个功能需要以下几个步骤:

一、打开有道翻译网页。

我是用谷歌浏览器打开的。

二、打开元素检查。

先打开检查,再输入要翻译的 文字,这样就能看到network选项夹里多了几个东西,找到XHR格式的,然后打开它。

三、寻找URL以及输入的格式。

打开之后主要看以下两部分
上图第一个就是翻译的URL,复制即可。下面这张图很重要,表示我们发送数据的格式,如果不一致的话,网页是不会给我们反馈的。

4、代码如下,需要根据上图信息修改。

import urllib.request
import urllib.parse
import json

def translation():
            url = 'http://fanyi.youdao/translate?smartresult=dict&smartresult=rule'
            data={}
            data['i']= content
            data['from']= 'AUTO'
            data['to']='AUTO'
            data['smartresult'] ='dict'
            data['client']= 'fanyideskweb'
            data['salt']= '16216671697475'
            data['sign']= '4b12fe85554d481a2d40331d2b07847f'
            data['ts']= '1621667169747'
            data['bv']= 'cda1e53e0c0eb8dd4002cefc117fa588'
            data['doctype']= 'json'
            data['version']= '2.1'
            data['keyfrom']= 'fanyi.web'
            data['action']= 'FY_BY_REALTlME'
            data = urllib.parse.urlencode(data).encode('utf-8')#data信息要和发送的信息格式一致
            response = urllib.request.urlopen(url,data)
            html = response.read().decode('utf-8')
            target =json.loads(html)
            print("翻译结果;%s" % (target['translateResult'][0][0]['tgt']))#[0]的作用是定位‘tgt’在片中的位置

while 1:
    content = input("请输入要翻译的内容(输入q退出程序):")
    if content=='q':
         quit()
    else:
        translation()

大功告成,觉得不错的可以三连一下,感谢各位!

本文标签: 文本python