django项目简单调取百度翻译接口的方法

yipeiwu_com7年前Python基础

1,建路由;

2,写方法;

def fanyi(request):
  import requests
  import json
  content = request.POST.get('content')
  try:
    if not content:
      res={'status':1,'info':'未输入查询内容'}
      return HttpResponse(json.dumps(res))
    else:
      headers = {
        'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
      }
      parmas = {'kw': content}
      response = requests.post(url='https://fanyi.baidu.com/sug', params=parmas, headers=headers)
      print(json.loads(response.text)['data'][0]['v'])
      res={'status':0,'info':json.loads(response.text)['data'][0]['v']}
      return HttpResponse(json.dumps(res))
  except:
    res={'status':2,'info':'未查询到结果,请输入正确的内容'}
    return HttpResponse(json.dumps(res))

3,前端页面;form表单提交;

<form method="post" onsubmit="return false" id="form">
     {% csrf_token %}
    <div>
      <button>英汉互译</button>
      <br>
      <textarea name="content" cols="50" rows="10" class="main"></textarea>
      <input type="button" id="onsubmit" value="查询">
    </div>
   </form>

4,触发提交事件和返回结果的的jquery;

<script>
  $('#onsubmit').click(function () {
    console.log(123);
    $.post('/apply/fanyi/',$('#form').serialize(),function (data) {
      if (data['status']==0){
        layer.alert(data['info'], {
           skin: 'layui-layer-molv' //样式类名
           ,closeBtn: 0
          })
      }else{
        layer.alert(data['info'], {
           icon: 1,
           skin: 'layer-ext-moon' //该皮肤由layer.seaning.com友情扩展。关于皮肤的扩展规则,去这里查阅
          })
      }
    },'json')
  })
</script>

5,页面效果;

总结

以上所述是小编给大家介绍的django项目简单调取百度翻译接口的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python开发简易版在线音乐播放器

在线音乐播放器,使用python的Tkinter库做了一个界面,感觉这个库使用起来还是挺方便的,音乐的数据来自网易云音乐的一个接口,通过urllib.urlopen模块打开网址,使用Js...

老生常谈Python序列化和反序列化

通过将对象序列化可以将其存储在变量或者文件中,可以保存当时对象的状态,实现其生命周期的延长。并且需要时可以再次将这个对象读取出来。Python中有几个常用模块可实现这一功能。 pickl...

python实现动态数组的示例代码

实现一个支持动态扩容的数组并完成其增删改查 #通过python实现动态数组 """ 数组特点: 占用一段连续的内存空间,支持随机(索引)访问,且时间复杂度为O(1) 添加...

使用PYTHON接收多播数据的代码

首先声明,这不是我写的,而是我找到的,但是别人写的相当好。 复制代码 代码如下: # UDP multicast examples, Hugo Vincent, 2005-05-14....

python实现弹窗祝福效果

python实现弹窗祝福效果

前言 猪年除夕之夜在亲人群抢红包心血来潮,想用python做比较好玩的新年祝福给亲人们乐呵乐呵。奈何初学Python,底子比较薄,通过查阅相关博客,在一位网友的基础代码之下添加改进,使得...