首页
学习
活动
专区
圈层
工具
发布

Python:urllib2模块的URLError与HTTPError

这里主要说的是URLError和HTTPError,以及对它们的错误处理。...HTTPError HTTPError是URLError的子类,我们发出一个请求时,服务器上都会对应一个response应答对象,其中它包含一个数字"响应状态码"。...如果urlopen或opener.open不能处理的,会产生一个HTTPError,对应相应的状态码,HTTP状态码表示HTTP协议所返回的响应的状态。...改进版 由于HTTPError的父类是URLError,所以父类的异常应当写到子类异常的后面,所以上述的代码可以这么改写: # urllib2_botherror.py import urllib2...412 Precondition Failed 请求中的前提条件被服务器评估为失败。 413 Request Entity Too Large 由于所请求的实体的太大,服务器不会接受请求。

2.9K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python 爬虫库 urllib 使用详解,真的是总结的太到位了!!

    Python urllib库 Python urllib库用于操作网页URL,并对网页的内容进行抓取处理。 urllib包 包含以下几个模块: urllib.request - 打开和读取URL。...需要用的就是每个模块的内置方法和函数。大概方法如下图: urllib.request模块 urllib.request定义了一些打开URL的函数和类,包含授权验证、重定向、浏览器cookies等。...HTTPError是URLError的一个子类,用于处理特殊HTTP错误例如作为认证请求的时候,包含的属性code为HTTP的状态码,reason为引发异常的原因,headers为导致HTTPError...as e: print(e.code) output 404 URLError和HTTPError混合使用 注意:由于HTTPError是URLError的子类,所以捕获的时候HTTPError...=None, errors=None) 使用%xx转义符替换string中的特殊字符。

    2.5K30

    Python基础教程(二十七):urllib模块

    引言 在Python中,urllib模块是一组用于处理URLs的标准库,它提供了发送网络请求、解析URLs、处理重定向和错误等功能。...本文将深入探讨urllib模块的各个组成部分,包括urllib.request, urllib.parse和urllib.error,并通过具体案例帮助你掌握如何使用这些模块进行网络请求和数据处理。...一、urllib.request:发送网络请求 urllib.request模块提供了多种方法来发送网络请求,最常用的是urlopen()函数,它可以打开一个URL并返回一个类似文件的对象,从中可以读取响应数据...query=1#fragment 三、urllib.error:处理网络错误 urllib.error模块包含了处理网络请求过程中可能出现的各种错误的异常类,如HTTPError和URLError。...3.1 捕获HTTP错误 from urllib.request import urlopen from urllib.error import HTTPError try: response

    38510

    Python-数据挖掘-网络异常

    Python-数据挖掘-请求伪装 ? 一、超时设置 假设有个请求,要爬取1000个网站,如果其中有100个网站需要等待30s才能返回数据,如果要返回所有的数据,至少需要等待3000s。...import urllib.request try: url = "http://47.104.14.43:8000" # timeout 设置超时的时间 file = urllib.request.urlopen...import urllib.request import urllib.error request = urllib.request.Request("http://www.shujuyuntuan.com...发生错误的原因是没有找到指定的服务器。 ② HttpError 异常和捕获 每个服务器的 HTTP 响应都有一个数字响应码,这些响应码有些表示无法处理请求内容。...如果无法处理,urlopen() 会抛出 HTTPError。HTTPError 是 URLError 的子类,它的对象拥有一个整型的 code 属性,表示服务器返回的错误代码。

    1K40

    python爬虫(七)_urllib2:urlerror和httperror

    这里主要说的是URLError和HTTPError,以及对它们的错误处理。...HTTPError HTTPError是URLError的子类,我们发出一个请求时,服务器都会对应一个response应答对象,其中它包含一个数字"响应状态码" 如果urlopen或opener.open...不能处理,会发出一个HTTPError,对应相应的状态码,HTTP状态码表示HTTP协议所返回的响应的状态。...改进版 由于HTTPError的父类是URLError,所以父类的异常应当写到子类异常的后面,所以上述的代码可以这么改写: #-*- coding:utf-8 -*- #24.urllib2_botherror.py...412 Precondition Failed 请求中的前提条件被服务器评估为失败。 413 Request Entity Too Large 由于所请求的实体的太大,服务器不会接受请求。

    2.9K80

    Python(十二)

    Python(十二) 發佈於 2019-04-23 本篇开始,将会学习有关 Python 爬虫的相关知识,通过几篇的介绍,完整学习 Python 爬虫的方方面面。...在学习 Python 爬虫之前,我们首先需要下载安装 MongoDB,Redis 以及 MySQL。在学习爬虫的过程中都会使用到,之后的学习中默认已经完成相关软件的安装。...MySQL 安装 brew install mysql 使用 启动: brew services start mysql 进入交互模式: mysql -uroot Python 多版本共存问题 如果都配置到环境变量中...,可以将其可执行文件取不同名来区别不同的 Python 和 pip。...urllib urllib 是 Python 内置的 HTTP 请求库: urllib.request 请求模块 urllib.error 异常处理模块 urllib.parse url 解析模块 urllib.robotparse

    65520

    Python 刷网页访问量

    尝试一下吧…… 使用了python3的urllib模块,开始使用了简单的urllib.request.urlopen()函数,结果发现行不通,csdn设置了简单的检查选项,需要python模拟浏览器进行访问才行...使用time模块中的sleep()函数即可。...__author__ = 'MrChen' import urllib.request   import time   #使用build_opener()是为了让python程序模仿浏览器进行访问...但是呢,如果我要把我所有的博客都刷个遍呢,一个一个地刷是不是太慢了呢,鄙人七八篇博客还勉强可以接受,但是如果以后七八十篇呢……想想就头疼,还是继续想办法吧 鉴于目前本人的所有博客都在博客主页目录的第一页中...#页面中的网址有重复的,需要使用set进行去重复 mypages = list(set(allfinds))   for i in range(len(mypages)):       mypages

    3.8K20

    解决ModuleNotFoundError: No module named urllib2

    要解决这个问题,有两种方法可以尝试:方法一:使用​​urllib.request​​模块替代​​urllib2​​由于​​urllib2​​在Python 3中已被移除,可以使用​​urllib.request​​...,并且可以在Python 2和Python 3中共享相同的代码库。...但是需要注意的是,​​urllib2​​​在Python 3中已被移除,取而代之的是​​urllib.request​​​和​​urllib.error​​​模块。...对于​​URLError​​,可以通过​​reason​​属性获取失败原因,在这个示例中是无法访问服务器。对于​​HTTPError​​,可以通过​​code​​属性获取响应的错误码。...但需要注意的是,由于在Python 3中被移除,所以在Python 3中应该使用​​urllib.request​​和​​urllib.error​​模块来代替​​urllib2​​。

    1.1K40
    领券