Python爬虫(part4):requests.get方法如何高效获取网页数据?

2026-06-10 22:291阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计683个文字,预计阅读时间需要3分钟。

Python爬虫(part4):requests.get方法如何高效获取网页数据?

学习笔记 + 文章目录 + requests模块 + requests常用方法 + requests.get() + requests模块 + 关于requests模块的安装 + 进入cmd,输入以下代码即可安装:pip install requests + requests常用方法

学习笔记



文章目录

  • ​​requests模块​​
  • ​​requests常用方法​​
  • ​​requests.get()​​



requests模块

  • 关于requests模块的安装

进入cmd,输入以下代码,即可安装:

pip install requests

requests常用方法

requests.get()

  • 作用

向网站发起请求,并获取响应对象。

  • 语法
res = requests.get(url,headers=headers)
#url :需要抓取的URL地址
#headers : 请求头
#timeout : 超时时间,超过时间会抛出异常
  • 响应对象(res)属性
# 响应字符编码
res.encoding
#res.encoding = 'utf-8'

# 字符串
res.text

#字节流
res.content

#HTTP响应码
res.status_code

#实际数据的URL地址
res.url
  • 举个例子1

我们访问测试网站(www.baidu.com/'

headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)
print('响应编码:', res.encoding)

控制台输出结果:

响应编码: utf-8

②指定编码

代码:

Python爬虫(part4):requests.get方法如何高效获取网页数据?

import requests
import random
from my_user_agent_list import user_agent

url = 'www.baidu.com/'

headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)
res.encoding = 'gbk'
print('响应编码:', res.encoding)

控制台输出结果:

响应编码: gbk
  • 举个例子3(抓取北极兔图片)

对于非结构化数据(比如:音频,视频,图片),采用二进制的形式抓取。

我们在百度图片里搜索到要抓取的北极兔图片,并检查元素,获取图片地址:

代码:

import requests
import random
from my_user_agent_list import user_agent

url = 'b-ssl.duitang.com/uploads/item/201301/15/20130115235815_LQQVU.jpeg'
headers = {'User-Agent':random.choice(user_agent)}

html = requests.get(url, headers = headers).content

#将图片保存到本地
with open('test/北极兔.jpg', 'wb') as f:
f.write(html)

查看爬取到的图片:

OK!

  • 举个例子4(查看HTTP响应码和实际数据URL地址)

代码:

import requests
import random
from my_user_agent_list import user_agent

url = 'www.baidu.com/'
headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)

print('HTTP响应码:', res.status_code)
print('URL地址:', res.url)

控制台输出结果:

HTTP响应码: 200
URL地址: www.baidu.com/

未完待续。。。 明天再写requests模块的其他方法。

本文共计683个文字,预计阅读时间需要3分钟。

Python爬虫(part4):requests.get方法如何高效获取网页数据?

学习笔记 + 文章目录 + requests模块 + requests常用方法 + requests.get() + requests模块 + 关于requests模块的安装 + 进入cmd,输入以下代码即可安装:pip install requests + requests常用方法

学习笔记



文章目录

  • ​​requests模块​​
  • ​​requests常用方法​​
  • ​​requests.get()​​



requests模块

  • 关于requests模块的安装

进入cmd,输入以下代码,即可安装:

pip install requests

requests常用方法

requests.get()

  • 作用

向网站发起请求,并获取响应对象。

  • 语法
res = requests.get(url,headers=headers)
#url :需要抓取的URL地址
#headers : 请求头
#timeout : 超时时间,超过时间会抛出异常
  • 响应对象(res)属性
# 响应字符编码
res.encoding
#res.encoding = 'utf-8'

# 字符串
res.text

#字节流
res.content

#HTTP响应码
res.status_code

#实际数据的URL地址
res.url
  • 举个例子1

我们访问测试网站(www.baidu.com/'

headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)
print('响应编码:', res.encoding)

控制台输出结果:

响应编码: utf-8

②指定编码

代码:

Python爬虫(part4):requests.get方法如何高效获取网页数据?

import requests
import random
from my_user_agent_list import user_agent

url = 'www.baidu.com/'

headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)
res.encoding = 'gbk'
print('响应编码:', res.encoding)

控制台输出结果:

响应编码: gbk
  • 举个例子3(抓取北极兔图片)

对于非结构化数据(比如:音频,视频,图片),采用二进制的形式抓取。

我们在百度图片里搜索到要抓取的北极兔图片,并检查元素,获取图片地址:

代码:

import requests
import random
from my_user_agent_list import user_agent

url = 'b-ssl.duitang.com/uploads/item/201301/15/20130115235815_LQQVU.jpeg'
headers = {'User-Agent':random.choice(user_agent)}

html = requests.get(url, headers = headers).content

#将图片保存到本地
with open('test/北极兔.jpg', 'wb') as f:
f.write(html)

查看爬取到的图片:

OK!

  • 举个例子4(查看HTTP响应码和实际数据URL地址)

代码:

import requests
import random
from my_user_agent_list import user_agent

url = 'www.baidu.com/'
headers = {'User-Agent':random.choice(user_agent)}

res = requests.get(url, headers = headers)

print('HTTP响应码:', res.status_code)
print('URL地址:', res.url)

控制台输出结果:

HTTP响应码: 200
URL地址: www.baidu.com/

未完待续。。。 明天再写requests模块的其他方法。