前言

学了这么久的python理论知识,需要开始实战来练手巩固了。

准备

首先安装爬虫urllib库

pip install urllib

获取有道翻译的链接url

需要发送的参数在form data里

示例

import urllib.request

import urllib.parse

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

data = {}

data['i'] = 'i love python'

data['from'] = 'AUTO'

data['to'] = 'AUTO'

data['smartresult'] = 'dict'

data['client'] = 'fanyideskweb'

data['salt'] = '16057996372935'

data['sign'] = '0965172abb459f8c7a791df4184bf51c'

data['lts'] = '1605799637293'

data['bv'] = 'f7d97c24a497388db1420108e6c3537b'

data['doctype'] = 'json'

data['version'] = '2.1'

data['keyfrom'] = 'fanyi.web'

data['action'] = 'FY_BY_REALTlME'

data = urllib.parse.urlencode(data).encode('utf-8')

response = urllib.request.urlopen(url,data)

html = response.read().decode('utf-8')

print(html)

运行会出现50的错误,这里需要将url链接的_o删除掉

删除后运行成功

但是这个结果看起来还是太复杂,需要在进行优化

导入json,然后转换成字典进行过滤

import urllib.request

import urllib.parse

import json

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

data = {}

data['i'] = 'i love python'

data['from'] = 'AUTO'

data['to'] = 'AUTO'

data['smartresult'] = 'dict'

data['client'] = 'fanyideskweb'

data['salt'] = '16057996372935'

data['sign'] = '0965172abb459f8c7a791df4184bf51c'

data['lts'] = '1605799637293'

data['bv'] = 'f7d97c24a497388db1420108e6c3537b'

data['doctype'] = 'json'

data['version'] = '2.1'

data['keyfrom'] = 'fanyi.web'

data['action'] = 'FY_BY_REALTlME'

data = urllib.parse.urlencode(data).encode('utf-8')

response = urllib.request.urlopen(url,data)

html = response.read().decode('utf-8')

req = json.loads(html)

result = req['translateResult'][0][0]['tgt']

print(result)

但是这个程序只能翻译一个单词,用完就废了。于是我在进行优化

import urllib.request

import urllib.parse

import json

def translate():

centens = input('输入要翻译的语句:')

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

head = {}#增加请求头,防反爬虫

head['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/86.0.4240.198 Safari/537.36'

data = {}#带上from data的数据进行请求

data['i'] = centens

data['from'] = 'AUTO'

data['to'] = 'AUTO'

data['smartresult'] = 'dict'

data['client'] = 'fanyideskweb'

data['salt'] = '16057996372935'

data['sign'] = '0965172abb459f8c7a791df4184bf51c'

data['lts'] = '1605799637293'

data['bv'] = 'f7d97c24a497388db1420108e6c3537b'

data['doctype'] = 'json'

data['version'] = '2.1'

data['keyfrom'] = 'fanyi.web'

data['action'] = 'FY_BY_REALTlME'

data = urllib.parse.urlencode(data).encode('utf-8')

req = urllib.request.Request(url,data,head)

response = urllib.request.urlopen(req)

html = response.read().decode('utf-8')

req = json.loads(html)

result = req['translateResult'][0][0]['tgt']

# print(f'中英互译的结果:{result}')

return result

t = translate()

print(f'中英互译的结果:{t}')

优化完成,效果还行。

总结

以上是编程之家为你收集整理的Python爬虫实现翻译功能全部内容,希望文章能够帮你解决Python爬虫实现翻译功能所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

python爬虫英文翻译_Python爬虫实现翻译功能相关推荐

  1. python简易英文字典_Python爬虫:自制简易词典

    运行平台: Windows Python版本: Python3.6 IDE: PyCharm 其他工具:Chrome浏览器作为一个程序员,会经常查阅一些技术文档和技术网站,很多都是英文的,遇到不认识的 ...

  2. python 谷歌翻译_python爬虫实践之谷歌翻译

    目录 概述 爬取谷歌翻译,根据提供的文字进行翻译. 准备 所需模块 urllib.request execjs:执行JS代码的模块 涉及知识点 python基础 urllib模块基础 运行效果 控制台 ...

  3. python翻译器怎么用_Python使用百度翻译开发平台实现英文翻译为中文功能示例

    本文实例讲述了Python使用百度翻译开发平台实现英文翻译为中文功能.分享给大家供大家参考,具体如下: #coding=utf8 import random import requests impor ...

  4. python编程理论篇_Python爬虫入门实战之猫眼电影数据抓取(理论篇)

    前言 本文可能篇幅较长,但是绝对干货满满,提供了大量的学习资源和途径.达到让读者独立自主的编写基础网络爬虫的目标,这也是本文的主旨,输出有价值能够真正帮助到读者的知识,即授人以鱼不如授人以渔,让我们直 ...

  5. python爬虫post请求_Python爬虫之GET和POST请求

    爬虫--GET请求和POST请求 urllib.parse.urlencode()和urllib.parse.unquote() 编码工作使用urllib.parse的urlencode()函数,帮我 ...

  6. python制作英语字典_Python爬虫之自制英汉字典

    最近在微信公众号中看到有人用Python做了一个爬虫,可以将输入的英语单词翻译成中文,或者把中文词语翻译成英语单词.笔者看到了,觉得还蛮有意思的,因此,决定自己也写一个玩玩~~ 首先我们的爬虫要能将英 ...

  7. python调用google翻译_python调用百度翻译、谷歌翻译

    谷歌翻译不提供接口,想要使用谷歌的翻译结果,需要借用爬虫技术,将待翻译的文本传入,抓取页面,解析出翻译结果,经测试,这种方法的翻译效果较差,不建议使用. 百度翻译提供接口,可在百度翻译注册开发者后获取 ...

  8. python urllib post请求_python爬虫(五)_urllib2:Get请求和Post请求

    本篇将介绍urllib2的Get和Post方法,更多内容请参考:python学习指南 urllib2默认只支持HTTP/HTTPS的GET和POST方法 urllib.urlencode() urll ...

  9. python 正则表达式提取数据_Python爬虫教程-19-数据提取-正则表达式(re)

    本篇主页内容:match的基本使用,search的基本使用,findall,finditer的基本使用,匹配中文,贪婪与非贪婪模式 Python爬虫教程-19-数据提取-正则表达式(re) 正则表达式 ...

  10. python爬虫的用途_Python爬虫的作用与地位(附python3教程+爬虫技术路线图)

    小编说:网络爬虫是一种伴随着互联网诞生与演化的"古老"的网络技术,随着互联网进入大数据时代,爬虫技术迎来了一波新的振兴浪潮. 本文通过企业内部与互联网两个场景向大家讲书爬虫发挥了哪 ...

最新文章

  1. 赛题出简单了,让我们情何以堪?
  2. Docker Review - Docker 概念 入门篇
  3. 01_MUI之Boilerplate中:HTML5示例,动态组件,自定义字体示例,自定义字体示例,图标字体示例
  4. “炉石”以上,“万智”未满《符文之地传奇》为何能有好开局?
  5. react学习(37)----获取子组件得实例
  6. android 本地 播放器,Android 本地播放器
  7. STM32单片机实现DMA+ADC+UART功能
  8. java骨架_基于Mat变换的骨架提取Java
  9. 【渝粤教育】国家开放大学2018年春季 0175-22T社会调查研究与方法 参考试题
  10. hMailServer邮件服务器之安装
  11. android图标分组名称唯美,手机屏幕分组好听名字
  12. 论文 图片配色 漂亮颜色
  13. Scala 函数式编程(一) 什么是函数式编程?
  14. 当我们谈论智能手表时,我们在谈论什么?
  15. 不一样的【青椒炒蛋】—36道超人气家常菜
  16. UML在软件工程中的使用 建模—类图
  17. 金刚菩提子开裂自动修复此计算机,金刚菩提子裂了怎么办 教你这些修复方法...
  18. 【算法】重新排序数组中正数和负数
  19. 编程思想 定义过滤的方式解耦
  20. Matlab:向饼图添加图例

热门文章

  1. 基于android的系统论文,基于安卓系统的系统毕业论文.doc
  2. 完美刷机显示连接服务器出错,完美刷机显示连接云服务器
  3. 小孩分油问题 (附python代码)
  4. Pytorch入门一
  5. iOS5开发:从程序里直接跳转到设置项的实现和代码分享(类似于金山电池医生功能,iOS5有效)
  6. 单词学习-Unit2Text3-2(15年8月6日,第16天)
  7. 解决Win10热点卡顿或无网络
  8. 掌财社:北向资金买入的股票一定涨吗?
  9. 给网站添加访问地图3d版,平面版
  10. 黑群晖显示真实CPU信息 【支持7.0-7.1】