requests模块是python中原生的基于网络请求的模块,是python的一个HTTP客户端库,跟urllib,urllib2类似,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。今天,小编就介绍一下是requests模块的安装及使用方法。
一、安装
第一步:pip安装
https://pypi.org/project/pip/#files下载pip压缩文件包,最好将其下载到scripts目录下。进入到安装目录下,执行:
python setup.py install
将
D:envipython2.7scripts添加到环境变量新打开一个命令行窗口,执行
pip list
第二步:requests安装命令
pip install requests
二、使用:爬取百度网站内容
导入模块
#导入requests模块 import requests
指定url
#1:指定url url='https://www.baidu.com/'
发起请求
#2:发起请求(get方法会返回一个响应对象) response = requests.get(url=url)
获取响应数据
#3:获取响应数据 page_text = response.text
持久化存储
#4:持久化存储 with open('./baidu.html','w',encoding='utf-8') as fp: fp.write(page_text) print('爬完了')
三:requests异常处理
异常:比如网络连接错误、http错误异常、重定向异常、请求url超时异常等等。
处理:可以利用 response.raise_for_status() 语句去捕捉异常,该语句在方法内部判断r.status_code是否等于200,如果不等于,则抛出异常。
爬取网页的通用代码框架:
try: response=requests.get(url) response.raise_for_status() #如果状态不是200,则引发异常 except: print("产生异常")
requests 会自动实现持久连接keep-alive,requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码,现代、国际化、人性化,这么好用的模块,快点学起来吧~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)