• 【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
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    AutoCAD如何移动零件和缩放零件图
    AutoCAD如何输入文字
    AutoCAD如何设置A0A1图纸
    AutoCAD如何批量设置线宽
    AutoCAD如何快速标注零件序号
    AutoCAD如何将dwf转成dwg格式
    AutoCAD参照编辑期间不允许使用 SAVE 命令怎么办
    AutoCAD2004启动时出现fail to get CommcntrController的怎么办
    AutoCAD 样条曲线如何结束
    AutoIt3常见问题解答
  • 原文地址:https://www.cnblogs.com/apolloren/p/11162839.html
Copyright © 2020-2023  润新知