Python网络爬虫——HTTP请求

1、简介

如果要进行客户端和服务端之间的消息传递,需要HTTP协议请求,HTTP协议请求主要分为6种类型:GET请求、POST请求、PUT请求、DELETE请求、HEAD请求,OPTIONS请求。

2、应用

GET请求实例:

思路:

1、构建对应的URL地址,该URL地址包含该GET请求的字段名和字段请求等信息,并且URL地址满足GET请求的格式,即“http://网址?字段名1=字段内容1&字段名2=字段内容2”

2、以对应的URL为参数,构建Request对象

3、通过urlopen()打开构建的Request对象

4、爬取内容的处理

# *-*coding:utf-8*-*
from urllib import request
url = "http://www.baidu.com/s?wd="
keyword = "娃哈哈"
keyword_code = request.quote(keyword)
new_url = url+keyword_code
req = request.Request(new_url)
data = request.urlopen(req).read()
doc = open("E:/test/2.html","wb")
doc.write(data)
doc.close()

POST请求实例:

思路:

1、设置好url地址

2、构建表单数据,并使用urllib.parse.urlencode对数据进行编码处理

3、创建Request对象,参数包含url和表单数据

4、使用add_header()添加头信息。模拟浏览器进行爬取

5、使用urlopen()打开对应的Request对象,完成信息的传递

6、对爬取的数据进行处理

# *-*coding:utf-8*-*
from urllib import request
from  urllib import parse
url = "http://www.qq.com"
postdata = parse.urlencode({"name":"1234","pwd":"5678"}).encode('utf-8')
req = request.Request(url,postdata)
req.add_header("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:61.0) Gecko/20100101 Firefox/61.0")
data = request.urlopen(req).read()

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

General_单刀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值