requests 模块的学习
http协议常用的请求头信息字段
- -User-Agent:
请求载体的身份标识,一个人的身份信息,例如:你来请求的身份是男还是女,几岁,哪里人等类似基础信息。
- -Connection:
请求完毕后,是断开连接还是保持连接。(close,keepline)
http协议常用响应头信息
- -Connection-Type
服务器响应回客户端的数据类型。
https协议-安全的超文本传输协议(S是密钥的英文)
加密方式
-
-对称密钥加密
-
-非对称密钥加密
- -证书密钥加密
requests 模块
requests 模块定义:python中原生的一款基于网络请求的模块,作用是可以模拟浏览器发起求请,
urllib被requests逐步代替,因为requests功能强大,简单便捷
-
-urllib
-
-requests
如何使用requests模块的编码流程
- 指定URL
- 发起请求
- 获取响应数据
- 存储获取的数据
环境安装
- pip install requests
实战编码
实战需求一:爬取sougou首页的页面数据
import requests
weburl = "https://www.sogou.com"
headers = {"User-Agent" :"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) "
"AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/83.0.4103.97 Mobile Safari/537.36"}
response = requests.get(url = weburl,headers = headers)
file = response.text
# 保存本地数据
with open("./sogou.html","w",encoding = "utf8") as filesave:
filesave.write(file)
# 保存本地数据的不同写法
# file = open("ok.htm","w",encoding = "utf8")
# file.write(response.text)
print("数据爬取结束。")
实战需求二:爬取搜狗指定词条对应的搜索结果页面
import requests
headers = {"User-Agent" :"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) "
"AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/83.0.4103.97 Mobile Safari/537.36"}
url = "https://www.sogou.com/web"
kw = input("请输入您要搜索的关键词:")
param = {
"query":kw
}
Respones = requests.get(url=url,params=param,headers=headers)
page_text = Respones.text
filename = kw + ".html"
with open(filename,"w",encoding = "utf-8") as fp:
fp.write(page_text)
print(filename,"保存成功")
网站声明:
1.本站大部分资源搜集于网络,仅代表作者观点,如有侵权请提交修改。
2.网站内容仅网站站长做个人学习摘记,任何人不得用于其他商业用途,网站发表的内容全权归原作者所有。
3.有任何疑问,可以点击右侧边栏的联系QQ进行咨询
4.本网站部分内容来自于其他网站平台的,版权归原网站所有,本网站只作信息记录,自己学习使用,特此申明,本站用户也不得使用此信息内容做其他商业用途。
白丁学者 » requests 模块的学习
白丁学者 » requests 模块的学习