最近开始学爬虫,今天学习了requests库,记录一下的自己的学习。
requests库应该算是urllib库的加强版吧,有urllib的功能但是比它更方便。
response对象的属性与方法
Requests一共有7种方法,全部的返回一个response对象 。response对象有很多属性和方法。我这里整理了几个常用。
属性
-
status_code ---- 响应HTTP状态的响应状态码,如200代表服务器正常响应
-
text----字符串形式的HTTP响应内容
-
content----bytes形式的HTTP响应内
-
encoding----从HTTP header中猜测的编码方式,优先选用。其实就是headers中content-tpye字段中的charset的值
-
apparent_encoding----从内容中分析出的响应内容的编码方式,备用。其实就是chardet模块中的detect方法。
这两个值有时不同的,这里我也还是有疑惑。有时上面的准,有时下面的准。
方法
-
get()----用GET方式去请求网页: requests.get(url,parmas=None,**kwargs)
-
post()----用POST方式去请求网页:requests.post(url,data=None,json=None,**kwargs)
-
head()----获取HTML网页头的方法:requests.head(url,params=None,**kwargs)
-
put()----对应HTTP的PUT:requests.put(url, data=None, **kwargs)
-
patch()----对应HTTP的PATCH:requests.patch(url, data=None, **kwargs)
-
delete()----对应HTTP的DELETE:requests.delete(url, **kwargs)
-
request()----构成一个请求,基础请求:requests.request(method, url, **kwargs)
http://docs.python-requests.org/zh_CN/latest/api.html#requests.Request