企业在公司做的网站遇到的问题,个人免费自助建站网站,广西网站开发软件,做设备出口网站大家好#xff01;我是码银#xff0c;代码的码#xff0c;银子的银#x1f970; 欢迎关注#x1f970;#xff1a; CSDN#xff1a;码银 公众号#xff1a;码银学编程 前言
在本篇文章#xff0c;我们继续讨论request模块。从上一节#xff08;爬虫学习(1)--reque… 大家好我是码银代码的码银子的银 欢迎关注 CSDN码银 公众号码银学编程 前言
在本篇文章我们继续讨论request模块。从上一节爬虫学习(1)--requests模块的使用-CSDN博客中我们可以知道requests.get() 是 Python 的 requests 库中的一个方法用于发送 HTTP GET 请求。那么使用requests.get(之后传回的数据类型是什么呢
是Response对象下面就让我们从认识一下Response对象开始学习吧
正文
response对象
在 requests 库中response 对象包含了服务器对请求的响应的所有信息。以下是一些常用的 response 对象属性
response.status_codeHTTP状态码例如200、404等。response.headers响应头是一个字典包含了服务器返回的所有头部信息。response.text响应内容以字符串形式返回。response.json()如果响应内容是JSON格式可以使用这个方法将其解析为Python对象。response.content响应内容以字节形式返回。response.cookies响应的cookies是一个字典包含了所有的cookies。response.url响应的URL即请求的URL。
以上是 requests 库中 response 对象的一些常用属性。更多详细的信息可以在 requests 库的文档中找到。
1、查看访问网页是否成功
import requests # 导入requests模块
response requests.get(https://blog.csdn.net/weixin_53197693/article/details/131499857)
#response requests.get(https://requests.readthedocs.io/projects/cn/zh-cn/latest/%E3%80%82)
if response.status_code requests.codes.ok:print(取得网页内容成功)
else:print(取得网页内容失败)
print(HTTP状态码,response.status_code)
访问成功截图 访问失败截图 2、取得网页内容
import requests # 导入requests模块
response requests.get(https://requests.readthedocs.io/en/latest/)
if response.status_code requests.codes.ok:print(取得网页内容成功)
else:print(取得网页内容失败)
print(HTTP状态码,response.status_code)
print(网页的内容大小是,len(response.text))
print(response.text)#输出网页源代码 这段代码的功能是发送一个HTTP GET请求到指定的URL并获取返回的网页内容。然后它会检查返回的HTTP状态码如果状态码是200表示请求成功则打印“取得网页内容成功”否则打印“取得网页内容失败”。接下来它打印HTTP状态码和网页内容的长度以字节为单位。最后它打印出整个网页的内容。
搜索网页特定内容 获取内容然后根据用户输入的字符串进行搜索。如果搜索成功它会输出“搜寻成功”否则输出“搜寻失败”。接着它会使用正则表达式对搜索结果进行进一步处理统计用户输入的字符串在网页内容中出现的次数并输出这个次数。
import requests # 导入requests模块
import re
response requests.get(https://requests.readthedocs.io/en/latest/)
if response.status_code requests.codes.ok:ainput(请输入搜寻的字符串)if a in response.text:print(搜寻成功)else:print(搜寻失败)
name re.findall(a, response.text)
if name !None:print(%s出现%d次 % (a, len(name)))
else:print(%s出现0次 % a) 出错的异常处理
使用 try/except 块来处理网络请求可能出现的异常是一个很好的做法。这样如果请求失败程序不会崩溃而是会捕获异常并给出相应的错误信息。
import requests # 导入requests模块
import retry:response requests.get(https://requests.readthedocs.io/en/latest/)response.raise_for_status() # 如果响应状态码不是200主动抛出HTTPError异常a input(请输入搜寻的字符串)if a in response.text:print(搜寻成功)else:print(搜寻失败)name re.findall(re.escape(a), response.text) # 使用re.escape()来确保用户输入被当作普通字符串处理if name:print(%s出现%d次 % (a, len(name)))else:print(%s出现0次 % a)except requests.exceptions.RequestException as err:# 捕获所有requests可能抛出的异常print(网络请求出错:, err)except Exception as err:# 捕获其他所有未被上述except捕获的异常print(发生未知错误:, err)
小结
本篇文章中主要介绍了response对象的一些属性、如何搜索网页特定内容和使用try/except处理网络请求可能出现的异常。
日日行不怕千万里常常做不怕千万事。——金樱
推荐一本好书 购买链接《Python从入门到精通第3版》(明日科技)【简介_书评_在线阅读】 - 当当图书
在视频生成即将迎来技术和应用大爆发之际为了帮助企业和广大从业者掌握技术前沿把握时代机遇机器之心AI论坛就将国内的视频生成技术力量齐聚一堂共同分享国内顶尖力量的技术突破和应用实践。
论坛将于2024.01.20在北京举办现场汇聚领域内专家和一线开发者期待能为视频生成领域呈现一场高质量、高水平的线下交流活动。
本次活动大咖云集分享内容中的很多模型/工具都是首次对外进行技术拆解与分享。快来报名抓住站在浪潮之巅的机会吧。
了解国内视频生成的最新技术进展和应用实践机器之心 AI 技术论坛将会是一次不错的机会。
活动日程直达链接https://hdxu.cn/RmNWu