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 爬虫随笔


- 本笔记不允许任何个人和组织转载

最新文章

  1. 《月之猎人 (Moon Hunters)》主角设计
  2. handler内存泄露
  3. 【Java基础】分支结构(1)
  4. RedHat 安装MySQL数据库【转】
  5. HQL查询及Hibernate对c3p0连接池的支持
  6. C++编写Config类读取配置文件
  7. Hadoop2.6.0在Ubuntu Kylin14.04上的配置
  8. C51汇编伪指令
  9. Appium介绍
  10. 《Java程序设计》终极不改版
  11. 启动tomcat时jmx port被占用
  12. unity runtime时导入fbx文件
  13. Linux内存都去哪了:(1)分析memblock在启动过程中对内存的影响
  14. Linux驱动之按键驱动编写(中断方式)
  15. Java语法基础学习DaySix
  16. Autofac学习之三种生命周期:InstancePerLifetimeScope、SingleInstance、InstancePerDependency 【转载】
  17. GITLAB安装笔记
  18. ASP.NET 的ClientIDMode属性
  19. Spring、SpringMVC和Springboot的区别(网摘)
  20. Android查缺补漏(View篇)--布局文件中的“@+id”和“@id”有什么区别?

热门文章

  1. 查看linux上面是否有安装redis
  2. 分布问题(二元,多元变量分布,Beta,Dir)
  3. stark - 4 ⇲ 视图函数
  4. winform两个窗体之间传值(C#委托事件实现)
  5. Hive初始
  6. linux编程之GDB调试
  7. i.mx6 Android5.1.1 初始化流程之框架
  8. js判断向量叉点 并求出交点坐标
  9. [转]Web后台模拟前端post(带NTLM验证)
  10. Autocomplete 自动提示