[第十章]Python Request库的使用

来源:互联网 发布:人工智能 时时彩 编辑:程序博客网 时间:2024/06/06 14:26

Requests库的使用

requests库是一个简洁且简单的HTTP请求的第三方库,它的优点是程序编写过程更接近正常URL访问过程。
网络爬虫和信息提交只是requests库能支持的基本功能。其中,与网页请求相关的函数如下表:

函数 描述 get(url[, timeout = n]) 对应于HTTPget方式,获取网页最常用的方法,可以增加timeout = n参数,设定每次请求超过时间为npost(url, data = {'key':'value') 对应于HTTPPOST方式,其中字典用于传送客户端数据

get()是获取网页最常用的方式,在调用requests.get()函数后,返回的网页内容会保存一个Reponse对象,其中,get()函数的参数url链接必须采用HTTP或者HTTPS方式访问 ,例如:

>>>import requests>>>r = requests.get("http://www.baidu.com")

注意,必须是http或https方式,否则连接失败
Reponse对象的属性列表如下:

属性 描述 status_code HTTP请求返回状态,整数,200表示连接成功,404表示失败 text HTTP响应内容的字符串形式,即URL对应的页面内容 encoding HTTP响应内容的编码方式 content HTTP响应内容的二进制方式

Requests的方法:

方法 描述 json() 如果HTTP响应内容包括JSON格式数据,则方法解析JSON rais_for_status() 如果不是200,则产生异常

获取一个网页内容的函数主要代码为:

import requestsdef getHTMLText(url):    try:        r = requests.get(url, timeout = 30)        r.raise_for_status()        r.encoding = 'utf-8'        return r.text,r.content    except:        return ""url = "http://www.baidu.com"html = getHTMLText(url)