Python网络请求初级篇:使用Requests库抓取和解析数据

在网络编程中,请求和接收数据是最常见的任务之一。Python的Requests库提供了丰富的功能,使得HTTP请求变得非常简单。在本文中,我们将了解如何使用Requests库发起HTTP请求,并解析返回的数据。

一、安装Requests库

首先,我们需要安装Requests库。在命令行中,使用pip工具进行安装:

bash 复制代码
pip install requests

二、发起GET请求

我们可以使用Requests库的get函数发起一个GET请求。以下是一个简单的例子:

python 复制代码
import requests

response = requests.get('http://api.github.com')

print(response.status_code)
print(response.text)

这段代码首先向GitHub的API发起了一个GET请求,然后打印出了响应的状态码和内容。

三、解析JSON响应

许多API会返回JSON格式的数据。Requests库使得解析JSON数据变得非常简单:

python 复制代码
import requests

response = requests.get('http://api.github.com')

data = response.json()

print(data)

在这段代码中,我们使用了json函数将响应内容转化为一个Python字典。

四、发起POST请求

除了GET请求,我们还经常需要发起POST请求。以下是一个简单的例子:

python 复制代码
import requests

response = requests.post('http://httpbin.org/post', data = {'key':'value'})

print(response.text)

这段代码向httpbin.org的POST接口发起了一个请求,同时发送了一个数据。

五、处理异常

在进行网络请求时,我们需要处理可能出现的各种异常:

python 复制代码
import requests
from requests.exceptions import HTTPError

try:
    response = requests.get('http://api.github.com/invalid')
    response.raise_for_status()
except HTTPError as http_err:
    print(f'HTTP error occurred: {http_err}')
except Exception as err:
    print(f'Other error occurred: {err}')

在这段代码中,我们首先尝试发起一个请求。如果请求出现了问题,raise_for_status函数会抛出一个异常。

使用Requests库,我们可以轻松地进行各种网络请求,并处理返回的数据。在后续的文章中,我们将深入学习如何使用Requests库进行更复杂的网络操作。

相关推荐
代龙涛3 分钟前
wordpress块主题
开发语言·后端·php
禾味8 分钟前
过程即奖励|前端转后端经验分享
前端·后端·面试
jipeng599437 分钟前
(在项目中学习技术)完成使用swoole完成App二维码扫码登录网页端的操作
后端·php
掘金者阿豪39 分钟前
Maven打包血泪史:当你的IDEA路径里藏了个空格,整个宇宙都与你为敌
后端
山水洛行41 分钟前
基于 vLLM、Tavily 和 Arize Phoenix 构建本地 LLM 可观测性技术栈
后端
初次攀爬者42 分钟前
力扣解题-无重复字符的最长子串
后端·算法·leetcode
不敲代码的攻城狮1 小时前
用 Spring StopWatch 做方法级别耗时统计 + 支持回调写法 + 自动打印日志
后端
柒.梧.1 小时前
Java构造器精讲:从基础特征到权限修饰符
开发语言·python
MekoLi291 小时前
生成式推荐系统:从“判别式匹配”到“生成式创造”的范式革命
后端·算法