zoukankan      html  css  js  c++  java
  • 【Python】使用POST方式抓取有道翻译结果

    1.安装requests库

    2.打开有道翻译,按下F12,进入开发者模式,输入我爱青青,点击Network,再点击XHR

    3、撰写爬虫

    import requests
    import json

    # 使用有道翻译
    def get_translate_date(word=None):
    # 错误 url = 'http://fanyi.youdao.com/translate_o?smartresult=dict&smartresult=rule'
    url = 'http://fanyi.youdao.com/translate'
    Form_data={
    'i': word,
    'from':'AUTO',
    'to':'AUTO',
    'smartresult':'dict',
    'client':'fanyideskweb',
    'salt':'15477850915136',
    'sign': 'cdedfb035de1ac1cf55109a1afb7a2c1',
    'ts':'1547785091513',
    'bv':'777cf4e24b15a2b93e1c9237866d73ad',
    'doctype':'json',
    'version':'2.1',
    'keyfrom':'fanyi.web',
    'action':'FY_BY_REALTIME',
    'typoResult':'false',
    }
    # 请求表单数据
    response = requests.post(url, data=Form_data)
    # 将JSON格式字符串转字典
    content = json.loads(response.text)
    # 打印翻译后的数据
    print(content['translateResult'][0][0]['tgt'])

    if __name__ == '__main__':
    get_translate_date('我爱青青')
    4.翻译结果

    5.错误处理(KeyError: 'translateResult')

    Python的字典一般都直接查找key ,如果在查找的key不存在的时候就会报:KeyError:

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

    改为:url = 'http://fanyi.youdao.com/translate'
    ---------------------
    作者:俊俊~
    来源:CSDN
    原文:https://blog.csdn.net/qq_40602000/article/details/86540928
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    C语言进阶—— 单引号和双引号14
    C语言进阶——注释符号12
    C语言进阶——enum, sizeof, typedef 分析11
    算法01
    vim+软件安装——06
    if(xx)和(a==b) 关于数据类型的转换
    浏览器的渲染机制,白屏和FOUC
    BFC的概念和解决外边距合并
    CSS有哪几种引入方式
    块级元素和行内元素的区别,常见的块级元素和行内元素有哪些
  • 原文地址:https://www.cnblogs.com/apolloren/p/11162839.html
Copyright © 2011-2022 走看看