系列目录

上一篇:05、Python爬虫之正则表达式常用方法(超全)


目录

  • 系列目录
  • 前言
  • 一、浏览器的来源
  • 二、request模块
    • 1、安装request模块
    • 2、get请求和post请求初识
  • 总结

前言

从这节开始,我们将进入requests模块的学习,本想直接了当的讲解它的各种使用方法和注意事项,但是想了想还是决定来唠嗑一下它的原理,方便大家对爬虫有一个直观的理解。后面码文,都会在前言附加上关键字,方便快速了解全文重点,按需取用。

关键字:浏览器认识、requests模块初识


一、浏览器的来源

相信大家对浏览器都不陌生了,在手机电脑或者其他电子设备都可以看到它的身影。而requests模块,它的原理本身就是模拟浏览器,向服务器端发送请求。

我们在搜索引擎输入关键词,就会出现URL列表(这里就简单说是网址吧)包含各种简单的信息。一点击访问,我们就拿到了相应的页面内容,那么搜索引擎是怎么知道这些URL的呢?

假设每个人都有一个网站,一个人对应一个URL。现在我们想要访问小胖的网站,需记住小胖的域名,即www.xiaopang.com。这不轻轻松松,我们马上就记住了。然而,当你要访问李华、李波、张三…的网站。于是我们就分别需要记住:www.lihua.com
www.libo.com www.zhangsan.comand so on,而这是不现实的,可能会出现以下两种情况:

  • 随着你需要访问的人数增加,域名需要记得越来越多。
  • 倘若你要访问的人,他的名字有点拗口。例如乾隆皇帝的全称:高宗法天隆运至诚先觉体元立极敷文奋武钦明孝慈神圣纯皇帝,那么你访问它:www.乾隆皇帝全称.com (拼音君已下线)

那怎么解决以上两点问题呢?每个上网的用户都拿个小本本把别人的信息记录下来,类似于路由表那样,但这样依然无法不是太好,总不能人手一本走天下吧。于是,出现了一个专门做这个事情的人——浏览器。

浏览器来自不同公司的搜索引擎,它们把尽可能的把所有网址记录下来,并给他们标上关键字,例如:

小胖——海鲜老板,李华——人工智能,张三——法外狂徒

这样关键字与网址就形成了映射关系,再按照关键字对各个网站进行分类,当你在浏览器的搜索引擎输入关键字,浏览器便会为你匹配到对应的网络列表(到了这里,就是咋们平常最熟悉的环节)。所以百度、谷歌等类似于中间商,他们所做的工作重点便是替你整理和保管这个小本本,使网站与关键字形成映射关系,方便你依照关键字进行筛选匹配。

二、request模块

1、安装request模块

在终端输入:pip install requests

2、get请求和post请求初识

  • 对于get,一般不用登录,可以直接拿取页面
import requestsresponse = requests.get("https://www.sogou.com/")
print(response.text)   #拿到了文本信息

结果如下:

<!DOCTYPE html><html lang="cn"><head><meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,user-scalable=no"><script>window._speedMark = new Date();  window.lead_ip = '222.16.21.47';window.now = 1652451688479;</script><script type="text/javascript">/*file=static/js/resourceErrorReport.js*/!function(a){var n=(new Date).getTime(),r=a.location.protocol;function c(e,t){var o=(new Date).getTime()-n;(new Image).src=["//pb.sogou.com/pv.gif?uigs_productid=wapap(以下省略)
  • 对于post,什么时候用到post请求?一般需要登录才能拿到页面,往某个地方提交数据的情况
import requestsresponse = requests.post(url="URL",data="Data")
#url对应网址,data对应登录信息
print(response.text)    #拿到了文本信息

requests模块还有以下方法:

  • requests.put()
  • requests.delete()
  • requests.head()
  • requests.options()

通过request模块,我们便可以模拟浏览器的很多行为,这就是我们对request模块的初步认识。学习requests模块,其实就是学习requests模块的参数。如果把参数理解参透,我们就可以利用它来实现爬虫。


总结

从个人角度,简单介绍了浏览器的作用,并同requests模块联系对比。下篇进入对requests模块基本参数的讲解。文毕,躺平。

Python爬虫系列06——requests模块(1)相关推荐

  1. Python爬虫实战,requests模块,爬虫采集网易财经股票交易数据

    前言 本文给大家分享的是如何通过Python爬虫采集网易财经易数据 开发工具 Python版本: 3.8 相关模块: requests模块 parsel模块 环境搭建 安装Python并添加到环境变量 ...

  2. #私藏项目实操分享#Python爬虫实战,requests模块,Python实现爬取网站漫画

    前言 今天带大家爬取爬取网站漫画,废话不多说,直接开始~ 开发工具 Python版本:3.6.4 相关模块: requests模块: re模块: shutil模块: 以及一些Python自带的模块. ...

  3. python爬虫实战,requests模块,Python实现抓取头条街拍美图

    前言 利用Python爬取的是今日头条中的街拍美图.废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: re: requests模块: 以及一些Python自带的 ...

  4. Python爬虫实战,requests模块,Python实现抓取王者荣耀全套皮肤

    开发工具 Python版本: 3.6.4 相关模块: requests模块: urllib模块: 以及一些Python自带的模块. 环境搭建 安装Python并添加到环境变量,pip安装需要的相关模块 ...

  5. python爬虫学习(一) requests模块

    requests模块: python中原生的一款基于网络请求的模块,功能非常强大,简单便捷,效率极高.作用:模拟浏览器发请求. 如何使用:(requests模块的编码流程) 一指定url 一发起请求 ...

  6. Python爬虫实战,requests模块,Python实现告诉你女神节送什么礼物

    前言 利用Python实现告诉你女神节送什么礼物.废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: pandas模块 qrcode模块: ...

  7. Python爬虫实战,requests模块,Python实现抓取芒果TV弹幕

    前言 利用Python实现抓取芒果TV弹幕,废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: pandas模块 以及一些Python自带 ...

  8. Python爬虫实战,requests模块,Python实现抓取腾讯视频弹幕评论

    前言 利用Python实现抓取腾讯视频弹幕,废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: pandas模块 以及一些Python自带 ...

  9. Python爬虫实战,requests模块,Python实现抓取知乎热点话题

    前言 利用Python实现抓取知乎热点话题,废话不多说. 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: requests模块: re模块: pandas模块: lxml模 ...

最新文章

  1. python语言type board_菜鸟学Python,双手奉上老司机给上路新手总结的Python实战问题……...
  2. Maptree-层级结构数据展示的绝佳尝试
  3. 操作系统课程设计 内核模块
  4. Android中asset和raw的区别
  5. Django 前后台的数据传递
  6. PHP索引数组关联数组
  7. Licia:最全最实用的 JavaScript 工具库
  8. Nginx防盗链的实现原理和实现步骤
  9. TensorRT安装教程
  10. stack overflow--技术问答网站
  11. PATH变量,cp,mv,cat,more,less,head,tail命令举例
  12. VS2013 调用的目标发生了异常
  13. pythonrequests证书_requests的ssl证书验证、身份认证、cert文件证书
  14. 20190110-生成密码以及简易密码强度检查
  15. log4net 不生成日志文件的解决办法
  16. linux 占用缓存前10_Linux查看内存使用情况应该使用什么命令
  17. C#箴言:定义常量的两种方法
  18. EXCEL的嵌套if及时间处理
  19. fastadmin 阿里云oss解决访问图片是下载
  20. NXP bootloader

热门文章

  1. xadmin与mysql数据库_Xadmin中的功能及设置
  2. 定时器计时不准问题 #Maximum Allowed Timestep
  3. 海贼王热血航线服务器维护,航海王热血航线连接服务器失败?解决方法一览
  4. 重新定位svn地址的方法
  5. webmail邮件服务器搭建_U-Mail邮件服务器
  6. HBuilder-简易banner制作
  7. 如何删除多玩java_用pc版多玩我的世界盒子,打开游戏时,为什么会弹出游戏需要java环境...
  8. fopen中w w+ wb区别
  9. ArcGIS pro使用时C盘空间越来越小
  10. 说话人识别/声纹识别学习路径的资料整理,从零学声纹识别