首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

urllib/urllib2返回的错误代码和实际页面

您好!您提到的 urllib/urllib2 是 Python 中的库,用于处理网络请求。在使用这个库时,可能会遇到一些错误代码,这些错误代码通常是由服务器返回的,表示请求失败。

以下是一些常见的错误代码:

  • 400 Bad Request:请求报文存在语法错误,服务器无法解析该请求。
  • 401 Unauthorized:请求需要进行身份验证,但客户端未提供正确的凭证。
  • 403 Forbidden:请求被服务器拒绝,可能是因为客户端没有权限访问该资源。
  • 404 Not Found:请求的资源不存在,服务器无法找到该资源。
  • 500 Internal Server Error:服务器内部错误,无法处理该请求。
  • 502 Bad Gateway:服务器作为网关或代理角色,从上游服务器收到了无效的响应。
  • 503 Service Unavailable:服务器暂时无法处理请求,可能是因为服务器过载或正在进行维护。

当您使用 urllib/urllib2 发送请求时,如果服务器返回了错误代码,您可以通过检查响应对象的 status_code 属性来获取错误代码。例如:

代码语言:python
复制
import urllib.request

url = "http://example.com"
response = urllib.request.urlopen(url)

if response.status_code >= 400:
    print("Error:", response.status_code)
else:
    print(response.read())

在这个例子中,如果服务器返回了一个错误代码,程序将输出错误代码。如果服务器返回了正常的响应,程序将输出响应内容。

需要注意的是,urllib/urllib2 是 Python 2 中的库,在 Python 3 中,您应该使用 urllib.requesturllib.error 来处理网络请求和错误。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python urllib2urllib使用

urllib2是在Python2标准库中,无需安装即可使用,在Python3中不能使用urllib2,在Python3中urllib2被改为了urllib.request,所以本文中代码在Python3...中运行时,把urllib2替换成urllib.request,得到结果是一样。...三、使用urllib来给url添加查询字符串 在我们使用urllib2获取网页数据时,肯定不是只获取首页数据,我们还需要获取一些其他页面。...获取到页面与我们在百度首页搜索python页面相同。 ? 四、使用urllib2发送POST请求 上面的例子中,我们使用都是GET方法,接下来我们使用POST方法。...POST方法响应是根据我们在请求体中携带数据来返回,通过data参数可以给请求对象设置请求体。

1K40

urllib2cookielib线程安全性

使用 urllib2 cookielib 发送 HTTP 请求和处理 cookies 一些基本技巧。你可以根据具体需求进一步定制扩展这些代码。...注意,在 Python 3 中,urllib2 被拆分成 urllib.request http.cookiejar 模块,但使用方式类似。下面就是我遇到这些问题并且做了详细解释。...问题背景:在使用 urllib2 cookielib 库处理 HTTP 请求时,可能会遇到以下问题:urllib2 cookielib 线程安全性如何?...如果在多线程环境中使用 urllib2 cookielib,是否会出现问题?如何确保在多线程环境中使用 urllib2 cookielib 安全性?....install_opener() 方法来解决 urllib2 cookielib 线程安全性问题代码例子:import urllib2​# 创建一个OpenerDirector对象opener

11010

Python:urllib2模块URLError与HTTPError

下面的例子里我们访问了一个不存在域名: # urllib2_urlerror.py import urllib2 requset = urllib2.Request('http://www.ajkfhafwjqh.com...注意,urllib2可以为我们处理重定向页面(也就是3开头响应码),100-299范围号码表示成功,所以我们只能看到400-599错误号码。...改进版 由于HTTPError父类是URLError,所以父类异常应当写到子类异常后面,所以上述代码可以这么改写: # urllib2_botherror.py import urllib2...401 Unauthorized 被请求页面需要用户名密码。 401.1 登录失败。 401.2 服务器配置导致登录失败。 401.3 由于 ACL 对资源限制而未获得授权。...这个错误代码为 IIS 6.0 所专用。 403.20 Passport 登录失败。这个错误代码为 IIS 6.0 所专用。 404 Not Found 服务器无法找到被请求页面

2.2K10

python爬虫(七)_urllib2:urlerrorhttperror

这里主要说是URLErrorHTTPError,以及对它们错误处理。...不能处理,会发出一个HTTPError,对应相应状态码,HTTP状态码表示HTTP协议所返回响应状态。...注意,urllib2可以为我们处理重定向页面(也就是3开头响应码),100-299范围号码表示成功,所以我们只能看到400-599错误号码 #-*- coding:utf-8 -*- #23.urllib2...401 Unauthorized 被请求页面需要用户名密码。 401.1 登录失败。 401.2 服务器配置导致登录失败。 401.3 由于 ACL 对资源限制而未获得授权。...这个错误代码为 IIS 6.0 所专用。 403.20 Passport 登录失败。这个错误代码为 IIS 6.0 所专用。 404 Not Found 服务器无法找到被请求页面

2.2K80

python之web模块学习-- url

这是为何urlliburllib2一起使用原因。...2  urllib2 常用方法  2.1  urllib2.urlopen     urlopen()是最简单请求方式,它打开url并返回类文件对象,并且使用该对象可以读取返回内容     urllib2...404 u.geturl() 返回返回数据实际url,但是会考虑发生重定向问题 u.info() 返回映射对象,该对象带有与url关联信息,对HTTP来说,返回服务器响应包含HTTP包头。...对于FTP来说,返回报头包含'content-length'。对于本地文件,返回报头包含‘content-length’'content-type'字段。...简单用法,如果要深入: http://www.cnblogs.com/yuxc/archive/2011/08/01/2123995.html     urlliburllib2之间区别: http

71520

python爬虫入门(一)urlliburllib2

这个错误代码为 IIS 6.0 所专用。 403.20 Passport 登录失败。这个错误代码为 IIS 6.0 所专用。 404 Not Found 服务器无法找到被请求页面。...urlopen # _*_ coding:utf-8 _*_ import urllib2 #向指定url地址发送请求,并返回服务器响应类文件对象 response = urllib2.urlopen...# 返回数据实际url,防止重定向 print response.geturl() #https://www.baidu.com/ # 返回服务器响应HTTP报头 print response.info...,注意只能第一个字母大写,后面的要小写 print request.get_header('User-agent') urlliburllib2主要区别  urlliburllib2都是接受URL...GET查询字符串产生,而urllib2则没有(这是urlliburllib2经常一起使用主要原因) (3)编码工作使用urlliburlencode()函数,帮我们讲key:value这样键值对转换成

1.9K60

urlliburllib2学习总结(python2.7.X)

3.x版本urlliburllib2已经合并为一个urllib库,学着比较清晰些,2.7版本呢urlliburllib2各有各作用,下面我把自己学习官方文档其他资料总结写下,方便以后使用。...Pythonurlliburllib2模块都做与请求URL相关操作,但他们提供不同功能。...对于可选参数timeout,阻塞操作以秒为单位,如尝试连接(如果没有指定,将使用设置全局默认timeout值)。实际上这仅适用于HTTP,HTTPSFTP连接。   ...典型错误包含‘404’ (没有找到页面), ‘403’ (禁止请求),‘401’ (需要验证)等。它包含2个重要属性reasoncode。   ...当一个错误被抛出时候,服务器返回一个HTTP错误代码一个错误页。你可以使用返回HTTP错误示例。

69620

Python模拟登陆

模拟人人登陆 #encoding=utf-8 import urllib2 import urllib import cookielib def renrenBrower(url,user,password...data = urllib.urlencode({"email":user,"password":password}) #以post方法訪问登陆页面,訪问之后cookieJar会自定保存...提交表单地址人人界面登陆地址是不一样实际是人人界面的登陆地址。...可是后面三个是不变,不须要加上去。仅仅要前两个即可 我模拟csdn登陆时候。五个參数。出去usernamepaassword以外有两个參数是动态变化。我静态赋值,一直登不上,郁闷。...须要动态获取这个值 占时我还不会,贴个我错误代码,有大神能帮我改改,怎么动态获取这两个值 import urllib import urllib2 import cookielib

1.1K10

自学Python四 爬虫基础知识储备

归根到底就是我们通过程序访问网站得到html代码,然后分析html代码获取有效内容过程。下面让我们从最简单爬虫开始: 爬取一个页面源代码 在python中,抓取网页库是urllib2。...传入url之后,我们得到一个response对象,返回信息就在这里面!通过response.read()获取里面的内容。...POSTGET数据传送   平常我们在浏览网页时候难免涉及到登录注册,填写表单,或者跳转到某个页面,这时候我们要跟服务器进行交互,向服务器发送数据,发送数据方式呢就是PostGet,两者区别在于...关于cookies我们用到了cookielib,cookielib模块提供可存储cookie对象,以便于与urllib2配合使用进行网站访问,利用其中CookieJar类捕获发送cookie,实现模拟登录...下面放一个HttpClient.py,里面包含了postget方法,以及getcookies: 1 import cookielib, urllib, urllib2, socket 2 3

44110

手把手教你利用爬虫爬网页(Python代码)

实际网络爬虫系统通常是几种爬虫技术相结合实现。...但是通用性搜索引擎存在着一定局限性: 不同领域、不同背景用户往往具有不同检索目的需求,通用搜索引擎所返回结果包含大量用户不关心网页。...周期性爬行刷新页面的网络爬虫相比,增量式爬虫只会在需要时候爬行新产生或发生更新页面,并不重新下载没有发生变化页面,可有效减少数据下载量,及时更新已爬行网页,减小时间空间上耗费,但是增加了爬行算法复杂度实现难度...1. urllib2/urllib实现 urllib2urllib是Python中两个内置模块,要实现HTTP功能,实现方式是以urllib2为主,urllib为辅。...1.6 重定向 urllib2默认情况下会针对HTTP 3XX返回码自动进行重定向动作。

2.1K10

Python入门网络爬虫之精华版

最基本抓取 抓取大多数情况属于get请求,即直接从对方服务器上获取数据。 首先,Python中自带urlliburllib2这两个模块,基本上能满足一般页面抓取。...=url, data=data) response = urllib2.urlopen(req) 2.2 使用cookie登陆 使用cookie登陆,服务器会认为你是一个已登陆用户,所以就会返回给你一个已登陆内容...这就是为什么如果你直接去爬网页本身url,你会找不到页面实际内容。...如果“请求”之前有页面,依据上一步网址进行分析推导第1页。以此类推,抓取抓Ajax地址数据。 对返回json格式数据(str)进行正则匹配。...在网站根目录下放一个robots.txt文本文件(如 https://www.taobao.com/robots.txt ),里面可以指定不同网络爬虫能访问页面禁止访问页面,指定页面由正则表达式表示

1.1K20

网络爬虫有什么用?怎么爬?手把手教你爬网页(Python代码)

▲图3-1 网络爬虫 网络爬虫按照系统结构实现技术,大致可以分为以下几种类型:通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫。实际网络爬虫系统通常是几种爬虫技术相结合实现。...但是通用性搜索引擎存在着一定局限性: 不同领域、不同背景用户往往具有不同检索目的需求,通用搜索引擎所返回结果包含大量用户不关心网页。...周期性爬行刷新页面的网络爬虫相比,增量式爬虫只会在需要时候爬行新产生或发生更新页面,并不重新下载没有发生变化页面,可有效减少数据下载量,及时更新已爬行网页,减小时间空间上耗费,但是增加了爬行算法复杂度实现难度...1. urllib2/urllib实现 urllib2urllib是Python中两个内置模块,要实现HTTP功能,实现方式是以urllib2为主,urllib为辅。...:',e.code 1.6 重定向 urllib2默认情况下会针对HTTP 3XX返回码自动进行重定向动作。

2.4K30

Python爬虫核心模块urllib学习

因为是为了自己复习起来方便~所以就不一句英语一句中文对照着翻了,有兴趣看原版,自己点官方文档吧~ Python 3.x版本后urlliburllib2 现在Python...() urlliburllib2模块之间区别 在python中,urlliburllib2不可相互替代。...urllib一般urllib2一起搭配使用 官方文档地址 翻译是Python 3.5.2版本,对应urllib https://docs.python.org/3.5/library/urllib.html...可选第二个超时参数timeout,用于阻塞操作,比如连接请求(如果未指定,全球将使用默认超时设置)。这实际上只适用于HTTP、HTTPSFTP连接。...这个函数始终返回一个对象,像context(上下文) 管理者并提供这些方法 geturl()——返回URL资源检索,常常重定向之后使用 info()——返回页面的元信息

77950

django queryset 去重 .distinct()说明

Python语法简洁而清晰,具有丰富强大类库。 urllib and urllib2 区别 urlliburllib2模块都做与请求URL相关操作,但他们提供不同功能。...#urllib.urlretrieve(url, local_name, method) urllib2 I. urllib2模块定义函数类用来获取URL(主要是HTTP),他提供一些复杂接口用于处理...可选参数timeout,阻塞操作以秒为单位,如尝试连接(如果没 有指定,将使用设置全局默认timeout值)。实际上这仅适用于HTTP,HTTPSFTP连接。...说到异常,我们先来了解返回response对象 几个常用方法: geturl() — 返回检索URL资源,这个是返回真正url,通常是用来鉴定是否重定向 info() — 返回页面的原信息就像一个字段对象...典型错误包含‘404′ (没有找到页面), ‘403′ (禁止请求),‘401′ (需要验证)等。它包含2个重要属性reasoncode。

1.7K20
领券