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 模块的学习

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据