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

Urllib2不工作,http禁止错误

Urllib2是Python中用于发送HTTP请求的标准库,但在Python 3.x版本中已经被废弃,取而代之的是urllib.request模块。如果你在使用Python 2.x版本,并且遇到了Urllib2不工作或者HTTP禁止错误的问题,可能有以下几个原因和解决方法:

  1. 版本兼容性问题:确保你使用的是Python 2.x版本,并且已经正确导入了Urllib2模块。如果你使用的是Python 3.x版本,应该使用urllib.request模块。
  2. 网络连接问题:检查你的网络连接是否正常,确保可以正常访问目标网站。如果网络连接存在问题,可以尝试使用其他网络环境或者检查网络设置。
  3. HTTP禁止错误:HTTP禁止错误通常是由于服务器设置了访问限制导致的。这可能是因为你的请求被服务器拒绝,或者你的请求不符合服务器的访问规则。解决方法包括:
  • 检查请求的URL是否正确,确保没有拼写错误或者缺失部分。
  • 检查请求的方法是否正确,例如GET、POST等。
  • 检查请求的头部信息是否完整和正确,有些服务器可能要求特定的头部信息才能正常访问。
  • 如果你需要通过身份验证才能访问服务器,确保提供了正确的用户名和密码。
  • 如果服务器使用了代理,确保配置了正确的代理设置。

总结起来,当遇到Urllib2不工作或者HTTP禁止错误时,首先要确认Python版本和模块导入是否正确,然后检查网络连接是否正常,最后排查服务器设置和请求参数是否正确。如果问题仍然存在,可以参考相关的Python文档和网络资源进行更深入的排查和解决。

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

相关·内容

【译】HTTP错误码403禁止:意味着什么,怎么修复它

在上网的时候,收到任何的错误码都是让人沮丧的体验。尽管我们已经习惯于404页面找不到,我们在页面迷失的时候,看到可爱的占位符来娱乐我们是很常见的事情了。但是有种更令人困惑的403错误禁止响应。...403响应是属于客户端错误4xx范围的HTTP响应。这意味着你或者你的浏览器做错了什么。...如果你在一个站点上拥有多个账号,并且尝试执行通常可以访问的操作,但是这次被禁止这样做了,那么你应该尝试此方法:使用你的其他账号登陆。...通知网站所有者:当你想访问内容时候返回了403 如果你希望完全可以访问有问题的资源,但是仍然看到此错误,那么明智的做法就是让网站背后的团队知道 - 这可能是他们的错误。...你可以通过http.cat站点来反省一下,为什么你的原始请求会被禁止 后话 原文:www.freecodecamp.org/news/http-e… 文章首发:github.com/reng99/blog

27.5K20

urllib与urllib2的学习总结(python2.7.X)

我们则重点关注HTTP。   在简单的情况下,我们会使用urllib2模块的最常用的方法urlopen。但只要打开HTTP URL时遇到错误或异常的情况下,就需要一些HTTP传输协议的知识。...创建openers时如果想要安装特别的handlers来实现获取url(如获取一个处理cookie的opener,或者一个处理重定向的opener)的话,先实例一个OpenerDirector对象,然后多次调用...典型的错误包含‘404’ (没有找到页面), ‘403’ (禁止请求),‘401’ (需要验证)等。它包含2个重要的属性reason和code。   ...当一个错误被抛出的时候,服务器返回一个HTTP错误代码和一个错误页。你可以使用返回的HTTP错误示例。...(错误码范围在300内),错误码在100-299范围内的表示请求成功,所以通常会看到的错误代码都是在400-599的范围内。

69320

Python:urllib2模块的URLError与HTTPError

urllib2 的异常错误处理 在我们用urlopen或opener.open方法发出一个请求时,如果urlopen或opener.open不能处理这个response,就产生错误。...下面的例子里我们访问了一个不存在的域名: # urllib2_urlerror.py import urllib2 requset = urllib2.Request('http://www.ajkfhafwjqh.com...注意,urllib2可以为我们处理重定向的页面(也就是3开头的响应码),100-299范围的号码表示成功,所以我们只能看到400-599的错误号码。...# urllib2_httperror.py import urllib2 requset = urllib2.Request('http://blog.baidu.com/itcast') try...这个错误代码为 IIS 6.0 所专用。 402 Payment Required 此代码尚无法使用。 403 Forbidden 对被请求页面的访问被禁止。 403.1 执行访问被禁止

2.2K10

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

下面看一个最简单的例子: 1 import urllib2 2 response = urllib2.urlopen('http://www.baidu.com/') 3 html = response.read...上面的代码我们可以写成这样: 1 import urllib2 2 3 request = urllib2.Request("http://www.baidu.com") 4 response = urllib2...不过除了上面那些还不够,现在网站为了避免爬虫去访问会进行一些检测,如果检测不通过就不会响应你的请求,为了完全模拟浏览器工作,我们往往要设置一些headers属性,以及防盗链: 1 headers = {...在访问网站的情况下我们可能会遇到一些网站错误,我们要在程序中进行处理(一如既往的try... except...得到错误信息内容): 1 import urllib2 2 3 req = urllib2...:400 非法请求  403 禁止访问  404 未找到资源  500 服务器内部错误 200 访问成功。

43610

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

网络爬虫结构 下面用一个通用的网络爬虫结构来说明网络爬虫的基本工作流程,如图3-4所示。 ▲图3-4 网络爬虫结构 网络爬虫的基本工作流程如下: 首先选取一部分精心挑选的种子URL。...在使用服务器提供的RESTful或SOAP服务时,Content-Type设置错误会导致服务器拒绝服务。...但是我们一般采用这种方式,而是使用ProxyHandler在程序中动态设置代理,示例代码如下: import urllib2 proxy = urllib2.ProxyHandler({ ‘http...=True) 将allow_redirects设置为True,则是允许重定向;设置为False,则是禁止重定向。...希望大家对本文中的网络爬虫工作流程和Requests实现HTTP请求的方式重点吸收消化。 本文摘编自《Python爬虫开发与项目实战》,经出版方授权发布。

2K10

python使用urllib2抓取防爬取链接

写了那么多篇找工作的文章,再写几篇就完了,也算是对自己一段时间的一个总结。近来发现自己博客上python技术点的文章有点少,为了防止自己总是遗忘,还是写出来的好。...开始了 一般情况下用python的童鞋是不可避免的要写一些爬虫程序的,因此对python中urllib和urllib2都比较熟悉。...而最基本的爬取方法就是: urllib.urlopen(url).read() 大多数网站都不会禁止这样的爬取,但是有些网站都设定了禁止爬虫爬取,当然这样一方面是为了保护内容的版权,另一方面也是为了方式过多的爬虫造成网站流量的白白浪费...下面的函数通过urllib2来模拟浏览器访问链接爬取内容: def get_url_content(url): i_headers = {"User-Agent": "Mozilla/5.0 (...headers=i_headers) return urllib2.urlopen(req).read() 仅仅是模拟浏览器访问依然是不行的,如果爬取频率过高依然会令人怀疑,那么就需要用到urllib2

78720

Python网络爬虫(三)- 爬虫进阶1.爬虫进阶cookielib2.具体代码操作

urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。假如一个网站它会检测某一段时间某个IP 的访问次数,如果访问次数过多,它会禁止你的访问。...urllib2 的异常错误处理 URLError import urllib2 requset = urllib2.Request('http://www.ajkfhafwjqh.com') try...注意,urllib2可以为我们处理重定向的页面(也就是3开头的响应码),100-299范围的号码表示成功,所以我们只能看到400-599的错误号码。...2.具体代码操作 代码操作(一) 自定义数据请求方式 # -*- coding:utf-8 -*- import urllib2,urllib #创建一个HTPP请求对象 http_handler =...如果在 HTTPHandler()增加 debuglevel=1参数,还会将 Debug Log 打开,这样程序在执行的时候,会把收包和发包的报头在屏幕上自动打印出来,方便调试,有时可以省去抓包的工作

67740

python爬虫入门(一)urllib和urllib2

这个错误代码为 IIS 6.0 所专用。 402 Payment Required 此代码尚无法使用。 403 Forbidden 对被请求页面的访问被禁止。 403.1 执行访问被禁止。...403.2 读访问被禁止。 403.3 写访问被禁止。 403.4 要求 SSL。 403.5 要求 SSL 128。 403.6 IP 地址被拒绝。 403.7 要求客户端证书。...423 锁定的错误。 5xx:服务器错误 500 Internal Server Error 请求未完成。服务器遇到不可预知的情况。...这个错误代码为 IIS 6.0 所专用。 500.18 URL 授权存储不能打开。这个错误代码为 IIS 6.0 所专用。 500.100 内部 ASP 错误。...urllib和urllib2经常一起使用的主要原因) (3)编码工作使用urllib的urlencode()函数,帮我们讲key:value这样的键值对转换成‘key=value’这样的字符串,解码工作可以使用

1.9K60

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

网络爬虫结构 下面用一个通用的网络爬虫结构来说明网络爬虫的基本工作流程,如图3-4所示。 ? ▲图3-4 网络爬虫结构 网络爬虫的基本工作流程如下: 首先选取一部分精心挑选的种子URL。...在使用服务器提供的RESTful或SOAP服务时,Content-Type设置错误会导致服务器拒绝服务。...但是我们一般采用这种方式,而是使用ProxyHandler在程序中动态设置代理,示例代码如下: import urllib2 proxy = urllib2.ProxyHandler({'http':...=True) 将allow_redirects设置为True,则是允许重定向;设置为False,则是禁止重定向。...希望大家对本文中的网络爬虫工作流程和Requests实现HTTP请求的方式重点吸收消化。

2.4K30

django queryset 去重 .distinct()说明

补充知识:Python——深入理解urllib、urllib2及requests(requests建议使用?)...没有,这也是为什么总是urllib,urllib2常会一起使用的原因 r = Request(url='http://www.mysite.com') r.add_header('User-Agent'...#urllib.urlretrieve(url, local_name, method) urllib2 I. urllib2模块定义的函数和类用来获取URL(主要是HTTP的),他提供一些复杂的接口用于处理...典型的错误包含‘404′ (没有找到页面), ‘403′ (禁止请求),‘401′ (需要验证)等。它包含2个重要的属性reason和code。...个人建议使用requests模块 更详细的相关介绍 urllib 官网 urllib2 官网 以上这篇django queryset 去重 .distinct()说明就是小编分享给大家的全部内容了,希望能给大家一个参考

1.7K20

python爬虫(六)_urllib2:handle处理器和自定义opener

如果在HTTPHandler()括号里面增加debuglevel=1参数,还会将Debug Log打开,这样程序在执行的时候,会把收包和发包的报头在屏幕上自动打印出来,方便调试,有时可以省去抓包的工作。...很多网站会检测某一段时间某个IP的访问次数(通过流量统计,系统日志等),如果访问字数多的不像正常人,它会禁止这个IP的访问。...所以我们可以设置一些代理服务器,每隔一段时间换一个代理,就算IP被禁止,依然可以换个IP继续爬取。...验证web客户端的用户名和密码(HTTPBasicAuthHandler()) ProxyBasicAuthHandler(代理授权验证) 如果我们使用之前的代码来使用私密代理,会报HTTP 407错误...有些Web服务器(包括HTTP/FTP等)访问时,需要进行用户身份验证,爬虫直接访问会报HTTP 401错误,表示访问身份未经授权: urllib2.HTTPError:HTTP Error 401:Unauthorized

1K80

Python:爬虫系列笔记(3) -- urllib库的高级用法

1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性。...12345678910 import urllib import urllib2 url = 'http://www.server.com/login'user_agent = 'Mozilla/...Proxy(代理)的设置 urllib2 默认会使用环境变量 http_proxy 来设置 HTTP Proxy。...假如一个网站它会检测某一段时间某个IP 的访问次数,如果访问次数过多,它会禁止你的访问。所以你可以设置一些代理服务器来帮助你做工作,每隔一段时间换一个代理,网站君都不知道是谁在捣鬼了,这酸爽!...六出祈山,七进中原,鞠躬尽瘁,死而后已的诸葛亮只因为有一个错误的case-马谡,整个结构就被break了!

76470

Python基础学习_11_网页爬虫学习总结

二.下载网页 使用urllib2模块进行网页的下载,在上一篇博客中,拉取百度百科的词条获得词条对应的url,但url可能已经过期,我们再去拉取会报异常,所以需要使用try-except捕获异常: ?...使用urllib2下载网页的时候,可能会出现异常,其中code为4xx为请求异常,5xx为服务器错误,当URLError的code为5xx时,可以考虑重新发起请求: ?...(2-1)ID遍历爬虫 很多网站由于数据挺多,会采用page切换的方式展现数据,类似于: http://www......../page=1 http://www...........我们可以使用爬虫对当前网页中其他词条信息进行抓取,这样就可以爬取得到大量的词条信息,但是我们会发现,爬取到的词条的url链接如下①: ① |- /view/76320.htm  相对链接 ② |- http...(2-4)下载限速 有些网站访问对访问速度进行了限制,为了不让爬虫被禁止,需要对爬虫下载网页的速度进行一定的限制: ?

47630

Python:urllib2模块Handler处理器 和 自定义Opener

如果在 HTTPHandler()增加 debuglevel=1参数,还会将 Debug Log 打开,这样程序在执行的时候,会把收包和发包的报头在屏幕上自动打印出来,方便调试,有时可以省去抓包的工作。...很多网站会检测某一段时间某个IP的访问次数(通过流量统计,系统日志等),如果访问次数多的不像正常人,它会禁止这个IP的访问。...所以我们可以设置一些代理服务器,每隔一段时间换一个代理,就算IP被禁止,依然可以换个IP继续爬取。...407 错误,表示代理没有通过身份验证: urllib2.HTTPError: HTTP Error 407: Proxy Authentication Required 所以我们需要改写代码,通过:...,爬虫直接访问会报HTTP 401 错误,表示访问身份未经授权: urllib2.HTTPError: HTTP Error 401: Unauthorized 如果我们有客户端的用户名和密码,我们可以通过下面的方法去访问爬取

30120
领券