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

使用python批量检查url的有效性

/usr/bin/python # -*- coding:utf-8 -*- import urllib2 from urllib2 import URLError result_url=[] count...(line) except URLError, e: if hasattr(e,'reason'): #stands for URLError print "can not...有效,则可以正常通过urlopen取到response,并且response.getcode()等于200; 但若url无效,无论是无法找到服务器还是其他http错误,都无法通过urlopen返回response...这个时候,就需要通过返回的错误类型来判断错误到底是url错误还是http错误。上面的程序是通过错误类型所拥有的属性来判断的。...如果错误类型有“code”属性,则代表错误是HTTPError;如果属性有“reason”,则代表是URLError错误。 当然,也可以在except中分别指定抛出的错误类型,进而进行不同的处理。

4K20

解决urllib.error.URLError urlopen error Errno 11004 getaddrinfo failed

该错误表示​​urlopen​​函数在解析URL时无法获取到正确的主机名和IP地址。这篇博客将帮助你了解这个错误的原因,并提供解决方案。...希望这篇博客能够帮助你解决​​URLError​​错误,并顺利进行网络数据爬取和Web开发。祝你成功!...函数功能​​urlopen​​函数的功能是发送HTTP请求并获取响应。它可以发送GET、POST等不同类型的请求,并可以设置超时时间、验证证书等参数。...除了发送GET请求,​​urlopen​​函数还可以发送POST等不同类型的请求。具体的使用方式和参数设置会有所不同,可以根据实际需求进行调整。...需要注意的是,​​urlopen​​函数也可能会抛出​​URLError​​异常,表示在发送请求过程中发生了错误,比如网络连接问题等。

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

    Python:爬虫系列笔记(4) -- URL异常处理

    (requset)except urllib2.URLError, e: print e.reason 我们利用了 urlopen方法访问了一个不存在的网址,运行结果如下: 1 [Errno 11004...] getaddrinfo failed 它说明了错误代号是11004,错误原因是 getaddrinfo failed 2.HTTPError HTTPError是URLError的子类,在你利用urlopen...处理方式:丢弃 300:该状态码不被HTTP/1.0的应用程序直接使用, 只是作为3XX类型回应的默认解释。存在多个可用的被请求资源。...处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃 301:请求到的资源都会分配一个永久的URL,这样就可以在将来通过该URL来访问此资源 处理方式:重定向到分配的URL 302...如果发生的不是HTTPError,则会去捕获URLError异常,输出错误原因。

    1.8K90

    Python库之urllib

    print('TIME OUT') 响应 响应类型、状态码、响应头 import urllib.request response = urllib.request.urlopen('https://www.python.org...as e: print(e.reason) 上述代码访问的是一个不存在的页面,通过捕捉异常,我们可以打印异常错误 这里我们需要知道的是在urllb异常这里有两个个异常错误: URLError...,HTTPError,HTTPError是URLError的子类 URLError里只有一个属性:reason,即抓异常的时候只能打印错误信息,类似上面的例子 HTTPError里有三个属性:code,...id=5#comment") print(result) 结果为: 这里就是可以对你传入的url地址进行拆分 同时我们是可以指定协议类型: result = urlparse("www.baidu.com...id=5#comment",scheme="https") 这样拆分的时候协议类型部分就会是你指定的部分,当然如果你的url里面已经带了协议,你再通过scheme指定的协议就不会生效 urllib.parse.urlunpars

    58620

    初识 Python 网络请求库 urllib

    data 是发往服务器的数据,当无数据发送时可省略该参数,是 bytes 类型的内容,可通过 bytes()函数转为化字节流 timeout 用于设置请求超时时间;单位是秒。...context 参数必须是 ssl.SSLContext 类型,用来指定 SSL 设置 抓取网页内容 使用 urllib.request.urlopen 可以很方便的获取网页内容,我们以获取 httpbin.org...urllib.error 网络通信是一个异步的通信过程,不可避免的会出现异常,此时就要用到 urllib.error 来处理错误『若不处理错误会造成程序中断执行』,这个会增加程序的健壮性。...URLError 是 urllib.error 异常的类的基类,URLError 是 OSError 的子类,当程序在运行过程中出现错误时会触发该异常。...error.URLError as e: print("Exception: ", e.reason) HTTPError 是专门用于处理 http 和 https 请求错误的异常类,HTTPError

    94640

    python爬虫从入门到放弃(三)之 Urllib库的基本使用

    , socket.timeout): print('TIME OUT') 响应 响应类型、状态码、响应头 import urllib.request response = urllib.request.urlopen...,类似404,500等错误 这个时候就需要我们捕捉异常,下面先写一个简单的例子 from urllib import request,error try: response = request.urlopen...通过捕捉异常,我们可以打印异常错误 这里我们需要知道的是在urllb异常这里有两个个异常错误: URLError,HTTPError,HTTPError是URLError的子类 URLError里只有一个属性...这里就是可以对你传入的url地址进行拆分 同时我们是可以指定协议类型: result = urlparse("www.baidu.com/index.html;user?...id=5#comment",scheme="https") 这样拆分的时候协议类型部分就会是你指定的部分,当然如果你的url里面已经带了协议,你再通过scheme指定的协议就不会生效 urlunpars

    1.7K80

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

    在简单的情况下,我们会使用urllib2模块的最常用的方法urlopen。但只要打开HTTP URL时遇到错误或异常的情况下,就需要一些HTTP传输协议的知识。...urlopen方法也可通过建立了一个Request对象来明确指明想要获取的url。调用urlopen函数对请求的url返回一个response对象。..., data) response = urllib2.urlopen(req) the_page = response.read()   headers——是字典类型,头字典可以作为参数在request...HTTPError是HTTP URL在特别的情况下被抛出的URLError的一个子类。下面就详细说说URLError和HTTPError。...,因为HTTPError是URLError的子类,所以应该把捕获HTTPError放在URLError前面,如不然URLError也会捕获一个HTTPError错误,代码参考如下: 1 import

    78220

    Python爬虫基础知识:异常的处理

    当urlopen不能够处理一个response时,产生urlError。 不过通常的Python APIs异常如ValueError,TypeError等也会同时产生。...其他不能处理的,urlopen会产生一个HTTPError。 典型的错误包含"404"(页面无法找到),"403"(请求禁止),和"401"(带验证请求)。...HTTP状态码通常分为5种类型,分别以1~5五个数字开头,由3位整数组成: 200:请求成功 处理方式:获得响应的内容,进行处理 201:请求完成,结果是创建了新资源。...处理方式:丢弃 300:该状态码不被HTTP/1.0的应用程序直接使用, 只是作为3XX类型回应的默认解释。存在多个可用的被请求资源。...处理方式:若程序中能够处理,则进行进一步处理,如果程序中不能处理,则丢弃 301:请求到的资源都会分配一个永久的URL,这样就可以在将来通过该URL来访问此资源 处理方式:重定向到分配的URL 302

    1.2K100
    领券