zoukankan      html  css  js  c++  java
  • 【Rollo的Python之路】Python 爬虫系统学习 (三)

    Python爬取百度翻译的类方法写法:

    import requests
    import json
    import sys
    
    
    class BaiduFanyi:
        def __init__(self,trans_str):
            self.trans_str = trans_str
            self.lang_detect_url = 'https://fanyi.baidu.com/langdetect'
            self.trans_url = 'https://fanyi.baidu.com/basetrans'
            self.headers = {"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"}
    
        def parse_url(self,url,data):
            response = requests.post(url,data=data,headers=self.headers)
            return json.loads(response.content.decode())
    
        def get_ret(self,dict_response):
            ret = dict_response['trans'][0]['dst']
            print('result is:',ret)
        def run(self):
            #1.获取语言类型
                #1.1 准备post的url地址,post_data
            lang_detect_data = {'query':'trans_str'}
                #1.2 发送post请求,获取响应
            lang = self.parse_url(self.lang_detect_url,lang_detect_data)['lan']
                #1.3 提取语言类型
            #2.准备post的数据
            trans_data = {'query':'trans_str','from':'zh','to':'en'} if lang == 'zh' else 
                {'query': 'trans_str', 'from': 'en', 'to': 'zh'}
            #3.发送请求,获取响应
            dict_resposne = self.parse_url(self.trans_str,trans_data)
            #4.提取翻译结果
    
    
    
    
    
    if __name__ == '__main__':
        trans_str = sys.argv[1]
        baidu_fanyi = BaiduFanyi()
        baidu_fanyi.run()
  • 相关阅读:
    EasyARM-Linux工具
    EasyARM-Linux文件系统
    EasyARM-Linux使用
    公差-PCBA
    novoton-USBDevice使用
    novoton-RTC使用
    novoton-ADC使用
    novoton-I2C使用
    novoton-timer使用
    novoton-usart使用
  • 原文地址:https://www.cnblogs.com/rollost/p/11062619.html
Copyright © 2011-2022 走看看