Python爬虫教程-08-post介绍(百度翻译)(下)

Python爬虫教程-08-post介绍(下)

为了更多的设置请求信息,单纯的通过urlopen已经不太能满足需求,此时需要使用request.Request类

构造Request 实例

req = request.Request(url=baseurl,data=data,headers=header)

发出请求

rsp = request.urlopen(req)

文件:

案例v8文件:https://xpwi.github.io/py/py爬虫/py08post2.py

# 案例v7百度翻译
# 使用Request
from urllib import request,parse
import json

baseurl = 'http://fanyi.baidu.com/sug'
keyword = input("请输入需要翻译的内容:")
data = {
    'kw': keyword
}

# 需要使用parse模块对data进行编码
data = parse.urlencode(data)
data = data.encode('utf-8')

header = {
    'Content-Length':len(data)
}
# 构造Request实例
req = request.Request(url=baseurl,data=data,headers=header)

# 发出请求
rsp = request.urlopen(req)

json_data = rsp.read().decode()

# 把json字符串转换为字典
json_data = json.loads(json_data)

for item in json_data['data']:
    # if item['k'] == keyword:
        print(item['k'], ": ", item['v'])

更多文章链接:Python 爬虫随笔


- 本笔记不允许任何个人和组织转载
posted @ 2018-09-06 20:12  xpwi  阅读(721)  评论(0编辑  收藏  举报