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

yipeiwu_com6年前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 list多级排序知识点总结

在python3的sorted中去掉了cmp参数,转而推荐“key+lambda”的方式来排序。 如果需要对python的list进行多级排序。有如下的数据: list_num =...

研究Python的ORM框架中的SQLAlchemy库的映射关系

前面介绍了关于用户账户的User表,但是现实生活中随着问题的复杂化数据库存储的数据不可能这么简单,让我们设想有另外一张表,这张表和User有联系,也能够被映射和查询,那么这张表可以存储关...

Django开发的简易留言板案例详解

Django开发的简易留言板案例详解

本文实例讲述了Django开发的简易留言板。分享给大家供大家参考,具体如下: Django在线留言板小练习 环境 ubuntu16.04 + python3 + django1.11 1...

Python中循环后使用list.append()数据被覆盖问题的解决

前言 最近发现一个问题,在一次爬虫实战中,需要将字典加入列表中,意外的情况出现了!!!下面简单分析一下出现的状况: list = [] dic = {} for i in range...

使用pandas将numpy中的数组数据保存到csv文件的方法

使用pandas将numpy中的数组数据保存到csv文件的方法

接触pandas之后感觉它的很多功能似乎跟numpy有一定的重复,尤其是各种运算。不过,简单的了解之后发现在数据管理上pandas有着更为丰富的管理方式,其中一个很大的优点就是多出了对数...