import urllib.request
url = 'http://www.baidu.com/'
#我们先定制一个请求并得到相应response他是个HttpResponse类对象
response = urllib.request.urlopen(url)
#该相应会有如下6中基本处理方式
# 1.直接将整个页面以二进制格式返回
print(response.read())
# 2.返回得是二进制格式得页面中得第一行
print(response.readline())
# 3.以二进制格式 返回所有得数据 以列表格式保存
print(response.readlines())
# 4.获取状态码 --200 代表得是服务器响应成功 我们测试得习惯上加这行代码 判断是否成功返回
print(response.getcode())
# 5.获取响应头
print(response.getheaders())
# 6.获取url
print(response.geturl())
最后,附上一系列常见的状态码
状态码农 | 说明 | 详情 |
100 | 继续 | 请求者应当继续提出请求,服务器已经收到请求的一部分 |
101 | 切换协议 | 请求者已经要求服务器切换协议,服务器已确认并且准备切换 |
200 | 成功 | 服务器已经成功处理了请求(这个是大家最爱看到的~~) |
201 | 已创建 | 请求成功并且服务器创建了新资源 |
202 | 已接受 | 服务然已接受请求,但尚未处理 |
203 | 非授权信息 | 服务器已成功处理了请求,但返回的信息可能来自另一个源 |
204 | 无内容 | 服务器成功处理了请求, 但没有返回任何内容 |
205 | 重置内容 | 服务器成功处理了请求,内容被重宜 |
206 | 部分内容 | 服务器成功处理了部分请求 |
300 | 多种选择 | 针对请求,服务器可执行多种操作 |
301 | 永久移动 | 请求的网页已永久移动到新位置,即永久重定向 |
302 | l临时移动 | 请求的网页暂时跳转到其他页面,即暂时重定 |
303 | 查看其他位置 | 如果原来的请求是 POST, 重定向目标文档应该通过 GET 提取 |
304 | 未修改 | 此次请求返回的网页未修改, 继续使用上次的资源 |
305 | 使用代理 | 请求者应该使用代理访问该网页 |
307 | 临时重定向 | 请求的资源临时从其他位置l响应 |
400 | 错误谙求 | 服务器无法解析该请求 |
401 | 未授权 | 请求没有进行身份验证或验证未通过 |
403 | 禁止访问 | 服务将拒绝此请求 |
404 | 未找到 | 服务器找不到请求的网页 |
405 | 方法禁用 | 服务器禁用了请求中指定的方法 |
406 | 不接受 | 无法使用请求的内容响应请求的网页 |
407 | 需要代理搜权 | 请求者需要使用代理授权 |
408 | 请求超时 | 服务器请求超时 |
409 | 冲突 | 服务器在完成请求时发生冲突 |
410 | 已删除 | 请求的资源已永久删除 |
411 | 需要有效长度 | 服务器不接受不含有效内容长度标头字段的请求 |
412 | 未满足前提条件 | 服务器未满足请求者在请求中设置的其中一个前提条件 |
413 | 请求实体过大 | 请求实体过大,超出服务器的处理能力 |
414 | 请求 URI过长 | 请求网址过长,服务器无法处理 |
415 | 不支持类型 | 请求格式不被请求页面支持 |
416 | 请求范围不符 | 页而无法提供请求的范围 |
417 | 术满足期望值 | 服务器未满足期望请求标头字段的要求 |
500 | 服务器内部错误 | 服务器遇到错误,无法完成请求 |
501 | 未实现 | 服务器不具备完成请求的功能 |
502 | 错误网关 | 服务器作为网关或代理, 从上游服务然收到无效响应 |
503 | 服务不可用 | 服务器目前无法使用 |
504 | 网关超时 | 服务器作为网关或代理,但是没有及时从上游服务~~收到请求 |
505 | HTTP 版本不支持 | 服务器不支持请求中所用的 HTTP 协议版本 |