requests模块是python中原生的基于网络请求的模块,是python的一个HTTP客户端库,跟urllib,urllib2类似,其主要作用是用来模拟浏览器发起请求。功能强大,用法简洁高效。在爬虫领域中占据着半壁江山的地位。今天,小编就介绍一下是requests模块的安装及使用方法。
一、安装
第一步:pip安装
https://pypi.org/project/pip/下载pip压缩文件包,最好将其下载到scripts目录下。进入到安装目录下,执行:
python setup.py install
将
D:\envi\python2.7\Scripts添加到环境变量新打开一个命令行窗口,执行
pip list
第二步:requests安装命令
pip install requests
二、使用:爬取百度网站内容
导入模块
<p>#导入requests模块 import requests<br /></p>
指定url
<p>#1:指定url url='https://www.baidu.com/'<br /></p>
发起请求
<p>#2:发起请求(get方法会返回一个响应对象) response = requests.get(url=url)<br /></p>
获取响应数据
<p>#3:获取响应数据 page_text = response.text<br /></p>
持久化存储
<p>#4:持久化存储 with open('./baidu.html','w',encoding='utf-8') as fp: fp.write(page_text) print('爬完了')<br /></p>
三: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 数据自动编码,现代、国际化、人性化,这么好用的模块,快点学起来吧~
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试