requests实战之破解百度翻译

使用requests模块,我们需要判断请求类型(post/get),然后根据类型选择参数(data/params),再接着我们根据相应的类型(text/Json),获取到网页信息,最后再保存数据信息即可。

Python 网络爬虫
#!/usr/bin/env python 
# -*- coding:utf-8 -*-
import requests
import json
if __name__ == "__main__":
    #1.指定url
    post_url = 'https://fanyi.baidu.com/sug'
    #2.进行UA伪装
    headers = {
        'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36'

    }
    #3.post请求参数处理(同get请求一致)
    word = input('enter a word:')
    data = {
        'kw':word
    }
    #4.请求发送
    response = requests.post(url=post_url,data=data,headers=headers)
    #5.获取响应数据:json()方法返回的是obj(如果确认响应数据是json类型的,才可以使用json())
    dic_obj = response.json()

    #持久化存储
    fileName = word+'.json'
    fp = open(fileName,'w',encoding='utf-8')
    json.dump(dic_obj,fp=fp,ensure_ascii=False)

    print('over!!!')

输入:dog
输出:

{"errno": 0, "data": [{"k": "dog", "v": "n. 狗; 蹩脚货; 丑女人; 卑鄙小人 v. 困扰; 跟踪"}, {"k": "DOG", "v": "abbr. Data Output Gate 数据输出门"}, {"k": "doge", "v": "n. 共和国总督"}, {"k": "dogm", "v": "abbr. dogmatic 教条的; 独断的; dogmatism 教条主义; dogmatist"}, {"k": "Dogo", "v": "[地名] [马里、尼日尔、乍得] 多戈; [地名] [韩国] 道高"}]}

发表评论

邮箱地址不会被公开。 必填项已用*标注