request基本用法(request和urllib区别)

request和 urllib区别
获取url

request = requests.get("http://www...com")


request = urllib2.Request("http://www....com",headers = headers)

response = urllib2.urlopen(request)

获取状态码

request.states_code  

response.getcode()

返回html

request.text

response.read()

获得头部信息

request.headers

response.info()

返回请求的

 

url request.url

response.geturl()

request库的7个主要方法
方法 说明

requests.request() 构造一个请求,支撑以下各方法的基础方法
requests.get() 获取HTML网页的主要方法,对应于HTTP的GET
requests.post() 向HTML网页提交POST请求的方法,对应于HTTP的POST
requests.head() 获取HTML网页头信息的方法,对应于HTTP的HEAD
requests.put() 向HTML网页提交PUT请求的方法,对应于HTTP的PUT
requests.patch() 向HTML网页提交局部修改请求,对应于HTTP的PATCH
requests.delete() 向HTML页面提交删除请求,对应于HTTP的DELETE
r = requests.get(url,params=None,**kwargs)

r = requests.url    :模拟获取页面的url连接

r = requests.params   :url中的额外参数,字典或字节流格式

r = requests.**kwargs :12个控制访问的参数

Response对象属性

属性                               说明
r.status_code   HTTP请求的返回状态,200表示连接成功,404表示失败
r.text  HTTP响应内容的字符串形式,即,url对应的页面内容
r.encoding  从HTTP header中猜测的响应内容编码方式
r.apparent_encoding 从内容中分析出的响应内容编码方式(备选编码方式)
r.content   HTTP响应内容的二进制形式

r.encoding:如果header中不存在charset,则认为编码为ISO‐8859‐1r.text根据r.encoding显示网页内容r.apparent_encoding:根据网页内容分析出的编码方式可以看作是r.encoding的备选

Requests库异常说明

异常  说明
requests.ConnectionError    网络连接错误异常,如DNS查询失败、拒绝连接等
requests.HTTPError  HTTP错误异常
requests.URLRequired    URL缺失异常
requests.TooManyRedirects   超过最大重定向次数,产生重定向异常
requests.ConnectTimeout 连接远程服务器超时异常
requests.Timeout    请求URL超时,产生超时异常
import requests
def getHTMLText(url):
    try:
        r = requests.get(url, timeout=30)
        r.raise_for_status()  # 如果状态不是200, 引发HTTPError异常
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return "产生异常"
 
if __name__=="__main__":
    url = "http://www.baidu.com"

--------------------- 
版权声明:本文为CSDN博主「Mr_lee_long」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41048363/article/details/79392388