利用Python实现百度API的调用

1。先要注册百度API成为开发者,

下面是开发者申请链接:

http://api.fanyi.baidu.com/api/trans/product/index

为方便使用,百度翻译开放平台提供了详细的接入文档,链接如下:

http://api.fanyi.baidu.com/api/trans/product/apidoc

在翻译文档中列出了详细的使用方法,以下是接入文档原文:

例:将apple从英文翻译成中文:

请求参数:

q=apple

from=en

to=zh

appid=2015063000000001

salt=1435660288

平台分配的密钥: 12345678

生成sign:

>拼接字符串1

拼接appid=2015063000000001+q=apple+salt=1435660288+密钥=12345678

得到字符串1 =2015063000000001apple143566028812345678

>计算签名sign(对字符串1做md5加密,注意计算md5之前,串1必须为UTF-8编码)

sign=md5(2015063000000001apple143566028812345678)

sign=f89f9594663708c1605f3d736d01d2d4

完整请求为:

http://api.fanyi.baidu.com/api/trans/vip/translate?q=apple&from=en&to=zh&appid=2015063000000001&salt=1435660288&sign=f89f9594663708c1605f3d736d01d2d4

签名sign的生成

通过Python提供的hashlib模块中的hashlib.md5()可以实现签名计算

以接入文档中的字符串为例:

  1. import hashlib
  2. m = ‘2015063000000001apple143566028812345678‘
  3. m_MD5 = hashlib.md5(m)
  4. sign = m_MD5.hexdigest()
  5. print ‘m = ‘,m
  6. print ‘sign = ‘,sign

得到签名之后,按照接入文档中要求,生成URL请求,提交后可返回翻译结果。以下是接入文档提供的字段以及对应描述的截图:

{"from":"en","to":"zh","trans_result":[{"src":"apple","dst":"\u82f9\u679c"}]}

解析返回结果

提交URL后的返回值为json格式,使用json模块可以对结果进行解析:

  1. import json
  2. result = ‘{"from":"en","to":"zh","trans_result":[{"src":"apple","dst":"\u82f9\u679c"}]}‘
  3. data = json.loads(result)
  4. print data[‘trans_result‘][0][‘dst‘]

以上就是API调用的所有程序。

原文地址:https://www.cnblogs.com/maowuyu-xb/p/9075635.html

时间: 2024-08-02 05:55:52

利用Python实现百度API的调用的相关文章

Python|基于百度API五行代码实现OCR文字高识别率

朋友扔过来一张图片,说在整理试题答案,但是试题是图片,想从网上搜索答案一个一个敲太累了,能不能将图片里的文字提取出来?我一看这是典型的OCR识别啊,直接祭出神器Tesseract. tesseract -l chi_sim 4.png stdout 目 二 画 口 " 口 出 再对比原图一看哦,不,是不是差的有点儿多?怎么办呢?tesseract识别不利,肯定是咱玩的不溜,为了识别几张图,再进行一通识别训练是不是有点儿浪费时间?现在都2020年了,各大厂商都提供这种文字识别服务,像我知道的百度都

利用Python写百度贴吧爬虫

最近,我们这边需要做一次防爬虫和机器蜘蛛的困扰,感觉困惑,有点无从入手,倒不如,直接用Python来写一个Spiner理解其各种原理,再下手也不迟啊,于是便立刻去写一个爬虫程序. 使用方法: 新建一个BugBaidu.py文件,然后将代码复制到里面后,双击运行. 程序功能: 将贴吧中楼主发布的内容打包txt存储到本地. 好,不废话,直接上代码: #!/usr/bin/python #-*- coding: utf-8 -*- import string import urllib2 import

利用python爬取海量疾病名称百度搜索词条目数的爬虫实现

实验原因: 目前有一个医疗百科检索项目,该项目中对关键词进行检索后,返回的结果很多,可惜结果的排序很不好,影响用户体验.简单来说,搜索出来的所有符合疾病中,有可能是最不常见的疾病是排在第一个的,而最有可能的疾病可能需要翻很多页才能找到. 实验目的: 为了优化对搜索结果的排序,想到了利用百度搜索后有显示搜索到多少词条,利用这个词条数,可以有效的对疾病排名进行一个优化.从一方面看,某一个疾病在百度的搜索词条数目越多,表示这个词条的信息特别丰富,侧面反映了搜索这个词条的人特别多,从而可以推出这个疾病在

调用百度API进行文本纠错

毕设做的是文本纠错方面,然后今天进组见研究生导师 .老师对我做的东西蛮感兴趣.然后介绍自己现在做的一些项目,其中有个模块需要有用到文本纠错功能. 要求1:有多人同时在线编辑文档,然后文档功能有类似Word中的在疑似错误下标浪线,或者标记高亮,并且要推荐修改选项 要求2:语料数据的获取.处理以及完善 要求3:文章写完后要有生成keyword 根据老师所讲要查阅文献,以及已有项目来分析可行性,首先想到之前曾有同学调用百度API来进行文档的纠错,然后在这里试了一下. API描述 识别输入文本中有错误的

百度AI开放平台- API实战调用

百度AI开放平台- API实战调用 一.      前言 首先说一下项目需求. 两个用户,分别上传了两段不同的文字,要计算两段文字相似度有多少,匹配数据库中的符合条件的数据,初步估计列出来会有60-100条左右,不会更多,只会更少.最终的需求是:从这些匹配结果中找到相似度较高的那些条目. 自己编写算法来实现是一个很大的工程,涉及到自然语言处理的一些方面,比较复杂.于是上网搜了搜,发现百度开放平台的自然语言处理可以免费调用,而且每天有10W的调用次数,对我的小项目来说正好满足.但是,在往下翻的时候

利用Python调用HBASE

利用Python调用HBASE的 需要安装thrift hbase-thrift 启动hbase的thrift服务:bin/hbase-daemon.sh start thrift 默认端口是9090 mysql 到hbase的数据同步: 1.put 2.Importtsv 3.编写MapReduce Job导入 4.sqoop 简单code: #!/usr/bin/env python #coding=utf-8 import sys sys.path.append('/usr/lib/pyt

C#调用百度API方法,POST和GET请求

        #region Get请求         /// <summary>           /// HTTP GET方式请求数据.           /// </summary>           /// <param name="url">URL.</param>           /// <returns>返回数据</returns>           private static st

Python汉英/英汉翻译(百度API/有道API)

百度API实现 Step1:申请API Key >>以前用过BAE,已经有了Api Key,没有的可以去申请 Step2:挺简单,直接看实现的代码吧 >>···python #coding:utf-8 import urllib2 import urllib import json #采用get方式请求 URL = 'http://openapi.baidu.com/public/2.0/bmt/translate?from=%s&to=%s&q=%s&cl

带头大哥777:Java调用百度API实现翻译

本设计参考了CSDN"京城第一歌姬"博客的设计思路,完成,本人在自己电脑上完全自己创建项目,自己敲代码完成,最后运行成功,我用的开发工具是Myeclipse10 ,JDK1.7 下运行,如图: 项目文件 下面是Java调用百度API实现翻译的具体步骤: 一.在写代码之前先在在百度翻译平台中,申请APP_ID 申请地址申请的详见 点击打开链接 http://api.fanyi.baidu.com/api/trans/product/index 申请之后,会得到APP_ID和SECURIT