2. requests.get()函数访问网页(小白入门)

news/2025/2/22 5:28:07/

2. requests.get()函数访问网页(小白入门)

文章目录

  • 2. requests.get()函数访问网页(小白入门)
    • 1. 人工访问网页
    • 2. 爬虫第一步:发起网络请求
    • 3. requests库的安装
    • 4. requests.get()函数:发送网络请求
    • 5. 代码解析
      • 1. 导入库的语法
      • 2. 指定网址
      • 3. 发送请求
      • 4. 输出响应
    • 6. 课堂练习
      • 1. 访问中国文库网
      • 2. 访问优美图库网
      • 3. 访问网易云音乐
    • 7. 总结

1. 人工访问网页

【人工访问网页】

  1. 在浏览器中输入网址。

  2. 回车【Enter】。

  3. 得到搜索结果。

在这里插入图片描述

这个动作其实就是浏览器向网页所在的服务器发送了一个请求。

服务器接收到浏览器的请求后进行处理,返回响应内容,传给浏览器。这个过程我们称之为响应。

最后浏览器再对响应内容进行渲染,将网页呈现了出来。

所以浏览器与服务器之间,是一个先请求,后响应的关系。

在这里插入图片描述

2. 爬虫第一步:发起网络请求

在这里插入图片描述

【备注】图片来源于风变编程。

爬虫的第一步是获取网页。

获取网页中最关键的一步就是模拟浏览器向服务器发出请求。

Python中有很多库都可以实现向服务器发送请求。

今天,我们先来学习requests库。

3. requests库的安装

requests [rɪˈkwests]:请求;要求。

requests库是Python的第三方库。

requests库的作用是模拟浏览器向服务器发送网络请求。

第三方库使用前需要安装,安装命令如下:

pip3 install requests  

install[ɪnˈstɔːl]:安装。

requests [rɪˈkwests]:请求;要求。

【安装步骤】

  1. 【win】+【R】打开【运行】。

  2. 【打开(O)】后的框中输入【cmd】。

  3. 点击【确定】。

在这里插入图片描述

  1. 在【cmd.exe】中输入如下命令:
pip3 install requests  

命令输入后点击回车。

我的安装后出现如下提示语句:

在这里插入图片描述

【提示语句1】

[notice] A new release of pip is available: 23.0.1 -> 23.1.2

翻译为注意pip的新版本可用:23.0.1 -> 23.1.2

【提示语句2】

[notice] To update, run: python.exe -m pip install --upgrade pip

翻译为[注意]要进行更新,请运行:python.exe-m pip安装-升级pip

【解决办法】

在【cmd.exe】中输入如下命令更新pip库。

python -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ --upgrade pip 

pip更新完毕后,在输入一次pip3 install requests就能完成安装。

在这里插入图片描述

第三方库的安装可参考基础语法笔记第73、74节:

73.python第三方库安装教程

74. 'pip’不是内部或外部命令,也不是可运行的程序-解决办法

除了上述安装方法,还有其他安装方法。

更多详细的安装说明可参考崔庆才的个人站点https://setup.scrape.center/requests

崔庆才的个人站点:requests的安装

清华大学开源软件镜像站网址:https://mirrors.tuna.tsinghua.edu.cn/help/pypi

清华大学开源软件镜像站

4. requests.get()函数:发送网络请求

根据代码书写步骤,我将获取网页分为4个步骤:

【准备工作】

pip3安装Python的requests

  1. import 导入库

  2. 指定网址

  3. 发送请求

  4. 输出响应

下面让我们来运行体验一下调用requests.get()函数发起网络请求。

【目标任务】

向百度首页https://www.baidu.com/发起网络请求。

【代码示例】

# 1.导入库
import requests# 2.定义url
url = 'https://www.baidu.com/'# 3.发送请求,并把响应结果赋值给变量r
r = requests.get(url)  # 4.打印响应内容
print(r)

【终端输出】

<Response [200]>

requests库中内置了很多函数来帮我们实现各种网络请求。

像requests.get()就是requests库中用来发起get请求的函数。

get请求用于从服务器获取数据,是一种比较常用的请求方法,像我们平时在浏览器中直接输入网址回车,这便发起了一个get请求。

5. 代码解析

1. 导入库的语法

使用Python的库或模块,一开始需要导入该库或该模块。

【导入语法】

import+模块名

【代码示例】

# 1.导入库
import requests

【温馨提示】

注意这里的requests库名最后是有一个s的,不用错写成request

2. 指定网址

# 2.定义url
url = 'https://www.baidu.com/'

url是我起的变量名,变量名根据你自己的喜好命名即可。

url是一个字符串类型的变量,里面的内容就是我们要访问的网址。

【温馨提示】

注意网址前后需要加英文引号''

3. 发送请求

r = requests.get(url) 

调用requests的get()方法,向服务器发送请求。

然后将响应结果返回给变量r。

【调用模块或库中的类、函数、变量的语法】

  1. 调用模块或库的类:模块名.类名(),如 csv.DictReader()

  2. 调用模块或库的函数:模块名.函数名(),如 os.mkdir()

  3. 调用模块或库的变量:模块名.变量名,如 os.name

这里我们用的是第2种。

  1. 库名为requests

  2. 函数名为get

  3. 参数为url

【温馨提示】

注意库名和方法名之间有一个英文小圆点.

4. 输出响应

我们发送完请求后,服务器返回的内容存储在了变量r中。

那r是个什么东西呢,我们用type函数来查看。

# 1.导入库
import requests# 2.定义url
url = 'https://www.baidu.com/'# 3.发送请求,并把响应结果赋值给变量r
r = requests.get(url)  # 4.1 查看返回值
print(r)# 4.2 查看r的类型
print(type(r))

【终端输出】

<Response [200]>
<class 'requests.models.Response'>

【返回值】

<Response [200]>

返回<Response [200]>表示请求网络成功。

这里的200根据实际访问情况也可能是其他数值,以后再做说明。

【返回类型】

<class ‘requests.models.Response’>

表示返回的是返回的是一个Response对象。

response[rɪˈspɒns]:响应。

可以理解成返回的是一个响应对象。

Response对象里存储着很多信息。

通过查看Response对象的属性,可以输出网页的文本信息、有响应的状态码等等。

6. 课堂练习

1. 访问中国文库网

# 1.导入库
import requests# 2.定义url
url = 'https://www.chinawenwang.com/'# 3.发送请求,并把响应结果赋值给变量r
r = requests.get(url)  # 4.1 查看返回值
print(r)# 4.2 查看r的类型
print(type(r))

【终端输出】

<Response [200]>
<class 'requests.models.Response'>

只要返回<Response [200]>就表示爬虫程序访问网页成功。

2. 访问优美图库网

# 1.导入库
import requests# 2.定义url
url = 'https://www.umei.cc/'# 3.发送请求,并把响应结果赋值给变量r
r = requests.get(url)  # 4.1 查看返回值
print(r)# 4.2 查看r的类型
print(type(r))

【终端输出】

<Response [200]>
<class 'requests.models.Response'>

<Response [200]>请求网页成功。

3. 访问网易云音乐

# 1.导入库
import requests# 2.定义url
url = 'https://music.163.com/'# 3.发送请求,并把响应结果赋值给变量r
r = requests.get(url)  # 4.1 查看返回值
print(r)# 4.2 查看r的类型
print(type(r))

【终端输出】

<Response [200]>
<class 'requests.models.Response'>

Python的Requests库官方中文文档网址:http://cn.python-requests.org/zh_CN/latest/

Python的Requests库官方中文文档网址

7. 总结

在这里插入图片描述


http://www.ppmy.cn/news/198519.html

相关文章

深度学习总结——用自己的数据集微调CLIP

CLIP概述 CLIP&#xff08;Contrastive Language-Image Pretraining&#xff09;是由OpenAI开发的一种深度学习模型&#xff0c;用于将图像和自然语言文本进行联合编码。它采用了多模态学习的方法&#xff0c;使得模型能够理解图像和文本之间的语义关系。 它的核心思想是将图…

i312100参数i3 12100核显性能

i3-12100处理器&#xff0c;采用了10nm工艺&#xff0c;四核8线程&#xff0c;12MB 三级缓存&#xff0c;最高主频4.3GHz&#xff0c;集成显卡 Intel UHD Graphics 73060W TDP。i312100组装电脑怎么搭配更合适这些点很重要http://www.adiannao.cn/du

i7 11700k核显性能 i711700k核显相当于什么显卡

i7 11700k内置核显的型号为UHD 750&#xff0c;拥有有32个EU单元&#xff0c;256个流处理器&#xff0c;相比上一代UHD 630有不少的提升性能方面接近gtx750&#xff0c;不过还是要看内存频率&#xff0c;双通道 i711700k怎么样这些点很重要http://www.adiannao.cn/du 英特尔酷…

i310010核显相当于什么显卡

i3-10100采用Comet Lake架构设计&#xff0c;虽然工艺依旧沿用的是14纳米&#xff0c;不过接口类型却发生了变化&#xff0c;如今的十代i3是LGA 1200接口。i310010组装电脑怎么搭配更合适这些点很重要 http://www.adiannao.cn/du i3-10100拥有4核8线程规格&#xff0c;默认主频…

i5 12600k核显相当于什么显卡

uhd770相当于低端显卡。 核显能干的活也就是看看4k视频&#xff0c;游戏就算了从跑分上来看&#xff0c;uhd基本相当于gt 740&#xff0c;不过Intel的核芯显卡跑分高&#xff0c;实际应用中还是差一点的&#xff0c;实际性能应该比gt 740低一点。uhd770是用在11代Intel桌面级CP…

笔记本外接2K显示器问题记录(集显Intel HD Graphic 3000)

近来买一个小米的2K显示器&#xff0c;通过hdmi线接入后&#xff0c;发现只能选择分辨率为1920*1080&#xff0c;然后自己耗费了一个下午的时间&#xff0c;才把它搞好&#xff0c;记录下。 思路&#xff1a; 如果需要支持2K的显示器&#xff0c;需要以下条件&#xff1a;数据…

i3 12100核显性能 i312100参数

ntel Core i3-12100是一款基于 Alder Lake 架构的处理器&#xff0c;性能在Core系列属于低端级别。它于 2022 年第一季度发布&#xff0c;i3-12100拥有4核心&#xff0c;8线程设计。与更高端的 Alder Lake SKU 不同&#xff0c;这款 CPU 只有 P 核&#xff08;性能核&#xff0…

Quadro P5200 - 最强大的移动工作站显卡 专门为了惠普 VR Z 背包电脑而发布

https://www.leiphone.com/news/201708/Z1MCetuoobEaHIqa.html 前言 在今年的计算机图形技术顶会 SIGGRAPH&#xff0c;英伟达并不是在单纯地展示自家的图形技术——我们都知道&#xff0c;单是讲讲显卡、讲讲图形&#xff0c;核弹厂就能吸引一大票观众&#xff0c;但其志不在此…