pip install requests
requests.request()
requests.get() #对应HTTP的GET 获取HTML网页
requests.head() #对应HTTP的HEAD 获取HTML页头信息
requests.post()
requests.put()
requests.patch() #向HTML网页提交局部修改请求
requests.delete() #向HTML页面提交删除请求
requests.get(url,params=None,**Kwargs)
params : url中的额外参数,字典或字节流格式,可选
**Kwargs:12个控制访问的参数
r=requests.get(url) # r:Respose对象
r.status_code #HTTP请求的返回状态 200表示;连接成功 404表示失败
r.text #HTTP响应内容的字符串形式,即,url对应的页面内容
r.encoding #从HTTP header中猜测的响应内容编码方式
r.apparent_encoding #从内容中分析出的响应内容编码方式(备选编码方式)
r.content #HTTP相应内容的二进制形式
requests.ConnectionError #网络连接错误异常,如DNS查询失败、拒绝连接等
requests.HTTPError #HTTP错误异常
requests.URLRequired #URL缺失异常
requests.TooManyRedirects #超过最大重定向次数,产生重定向异常
requests.ConnectTimeout #连接远程服务器超时异常
requests.Timeout #请求URL超时,产生超时异常
r.raise_for_status()
import requests
def getHTMLText(url):
try:
r=requests.get(url,timeout=30)
r.raise_for_status()
r.encoding=r.apparent_encoding
return r.text
except:
return "产生异常"
if _name_=="_main_":
url="http://www.baidu.com"
print(getHTMLText(url))
HTTP,Hypertext Transfer Protocol 超文本传输协议
http://host[:post][path]
host:合法的Internet主机域名或IP地址
port:端口号,缺省端口为80
path:请求资源的路径
get:请求获取URL位置的资源
head:请求获取URL位置资源的响应消息报告,即获得该资源的头部信息
post:请求向URL位置的资源后附加新的数据
put:请求向URL位置存储一个资源,覆盖原URL位置的资源
patch:请求局部更新URL位置的资源,即改变该处资源的部分内容
delete:请求删除URL位置存储的资源
payload={'key1':'value1','key2':'value2'}
r=requests.post('http://httpbin.org/post',data=payload)
print(r.text)
requests.request(method,url,**Kwargs)
method:请求方式,对应get/put/post/patch/head/delete/options
url:
**Kwargs:控制访问的参数,共13个
params:字典或字节序列,作为参数增加到url中
data:字典、字节序列或文件对象,作为Request的内容
json:Json格式的数据,作为Request的内容
headers:字典,HTTP定制头
cookies:字典或Cookiejar,Request中的cookie
auth:元组,支持HTTP认证功能
files:字典类型,传输文件
timeout:设定超时时间,秒为单位
proxies:字典类型,设定访问代理服务器,可以增加登录认证
allow_rediects:True/False,,默认为True,重定向开关
stream:True/False,默认为True,获取内容立即下载开关
verify:True/False,默认为True,认证SSL证书开关
cert:本地SSL证书路径
服务器因为安全原因对其他方法进行限制,所以,get()方法最常用。