session与cookie区别:
1 session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务端可以知道其中的信息
2 session中保存的是对象,cookie中保存的是字符串
3 session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到;而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不道德
<h2>代码:封装的类get与post</h2>
from urllib import request,parse
from urllib.error import HTTPError,URLError
class Tuozhan():
#封装get,post
def get(self,url,headers=None):
return self.urlrequests(url,headers=headers)
def post(self,url,form,headers=None):
return self.urlrequests(url,form=form,headers=headers)
def urlrequests(self,url,form=None,headers=None):
#默认文字头
user_agent='Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36'
#判断是否有用户头传入
if headers == None:
headers={
'User-Agent':user_agent
}
html_bytes=b''
try:
#POST
#传入form 是字典格式,首先转化为str,再转化为二进制bytes类型
if form:
#转化为str
form_str=parse.urlencode(form)
#转化为bytes
form_bytes=form_str.encode('utf-8')
#定义request
req=request.Request(url,data=form_bytes,headers=headers)
else:
#GET
req=request.Request(url,headers=headers)
#根据req请求回应
response=request.urlopen(req)
#读取回应
html_bytes=response.read()
except HTTPError as e:
print(e)
except URLError as e:
print(e)
return html_bytes
if __name__ == '__main__':
k=Tuozhan()
url='http://www.baidu.com'
print(k.get(url))