• 【POST请求-腾讯翻译君-爬虫案例】


    原因:尝试多个在线翻译平台,由于返回数据存在加密原因(暂时不会解密),最总找到 ”腾讯翻译君“ 完成爬虫案例POST请求测试

    案例测试网址

    • 腾讯翻译 :https://fanyi.qq.com/
    import requests
    import json
    
    
    class Search():
    
        def __init__(self,  word) -> None:
    
            self.url = "https://fanyi.qq.com/api/translate"
    
            self.headers = {
                'User-Agent':
                'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36'
            }
    
            self.data = {
                'source': 'auto',
                'target': 'en',
                'sourceText': word,
                'qtv': 'd6b80aee23530d6d',
                'qtk': 'YEYhu1zSCa2JbdJ16xeGfH12oAHABTokH8NMzPVriyAqD0nbaHOA7BEF3naAeSImmaRMOdAmb2xaToIjtFfitIPLNg3UIbmQLhgXKfnM46FG0s5bngRWAE6tzq6k0g/2XMIGR/JPbIzGelVDqqaZuw==',
                'sessionUuid': 'translate_uuid1696487685473'
            }
    
        def post_data(self):
            response = requests.post(
                self.url, headers=self.headers, data=self.data)
    
            # print(response)  打印
    
            return response.content
    
        def parse_data(self, data):
    
            # loads方法将json字符串转换成python字典
    
            dict_data = json.loads(data)
    
            print(dict_data['translate']['records'][0]['targetText'])
    
            # records使用列表格式获取
    
        def run(self):
    
            # 编辑爬虫逻辑
    
            # url
    
            # headers
    
            # data 字典
    
            # 发送请求响应
            response = self.post_data()
    
            print(response)  # 打印返回结果字符串
            print("*" * 50)
    
            # 数据解析
            self.parse_data(response)
    
    
    if __name__ == '__main__':
    
        word = input("请输入要翻译的单词或句子:")
    
        search = Search(word)
    
        search.run()
    
    
    
    """
        "translate": {
            "errCode": 0,
            "errMsg": "",
            "sessionUuid": "translate_uuid1696487685473",
            "source": "zh",
            "target": "en",
            "records": [
                {
                    "sourceText": "时间",
                    "targetText": "time",
                    "traceId": "1e15f8dc9fcd49b795128356b853db58"
                }
            ],
            "full": true,
            "options": {}
        }
    """
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
  • 相关阅读:
    实时音视频通信的指标和主要矛盾
    R语言—基本统计分析
    达梦更换正式授权dm.key
    C++ 类的继承(Inheritance)
    Java 中如何优雅的关闭进程&线程
    【已验证】微信小程序开发-绑定数据23.10.09
    面对中小型机房动力环境该如何实现监控?
    envoy开发调试环境搭建
    Android面试题汇总(二)
    我们将「基础设施」看成是自身的角色和定位的时候
  • 原文地址:https://blog.csdn.net/m0_45097365/article/details/133580145