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

Python3.X出现AttributeError: module ‘urllib’ has no attribute ‘urlopen’错误

研究用Python写爬虫,下载一个网页。...报错代码如下 import urllib def getHtml(url): page = urllib.urlopen(url) html = page.read() return...html html = getHtml("http://www.baidu.com") print(html) 运行时报错:AttributeError: module ‘urllib’ has...no attribute ‘urlopen’ 在网上查了一些资料,有人说是因为你的这个工程目录下可能有一个自己定义的文件与urllib重名,导致上述代码在引用时实际引用的是自定义的那个urllib,结果查找自己的项目文件夹下也没有重名的文件...其实真正原因是在Python3.X中应该用urllib.request。更改后就不会再出现这个错误了。 import urllib.request #print(urllib.

1K10

python3爬虫urllib

urllib 库:Python 内置的 HTTP 请求库,无需额外安装即可使用;Python 2 中有 urlliburllib2 两个库来实现请求的发送,Python 3 中统一为 urllib...官方文档:https://docs.python.org/3/library/urllib.html urllib所包含的常用模块 urllib.request:模拟发送请求; urllib.error...\python\Spider\1.py", line 3, in response = urllib.request.urlopen('https://angelni.github.io...异常处理 URLError 如果打开一个不存在的页面,就会出现 URLError 错误,该错误有一个 reason 属性,用于返回错误的原因。...它有如下3个属性: code:返回 HTTP 状态码,比如 404 表示网页不存在,500 表示服务器内部错误等。 reason:同父类一样,用于返回错误的原因。 headers:返回请求头。

1.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

详解 python3 urllib

本文是爬虫系列文章的第一篇,主要讲解 Python 3 中的 urllib 库的用法。urllibPython 标准库中用于网络请求的库。...如果不设置 headers 中的 User-Agent,默认的User-Agent是Python-urllib/3.5。可能一些网站会将该请求拦截,所以需要伪装成浏览器发起请求。...2 错误解析 发起请求难免会出现各种异常,我们需要对异常进行处理,这样会使得程序比较人性化。...URLError URLError 是 urllib.error 异常类的基类, 可以捕获由urllib.request 产生的异常。 它具有一个属性reason,即返回错误的原因。...1)renson:与父类用法一样,表示返回错误的原因。 1)headers`:HTTP 请求返回的响应头信息。 获取 HTTP 异常的示例代码, 输出了错误状态码、错误原因、服务器响应头 ?

57610

Python3 Urllib库的基本使用

一、什么是Urllib   Urllib库是Python自带的一个http请求库,包含以下几个模块: urllib.request    请求模块 urllib.error        异常处理模块..."Content-Type": "application/x-www-form-urlencoded", "Host": "httpbin.org", "User-Agent": "Python-urllib...示例代码4: 1 # response有用的方法或参数 2 import urllib.request 3 4 response = urllib.request.urlopen('http://www.python.org...示例代码3: 1 import http.cookiejar,urllib.request 2 3 filename = 'cookie.txt' 4 cookie = http.cookiejar.MozillaCookieJar...这里的第三个print是一个反例,很多人认为解析是从域名开始的,实际上是从‘//’开始解析的,官方文档给出了很明确的解释:If url is an absolute URL (that is, starting

1.1K10

重拾python爬虫之urllib3

Urllib3是一个功能强大,条理清晰,用于HTTP客户端的Python库。许多Python的原生系统已经开始使用urllib3。...Urllib3提供了很多python标准库urllib里所没有的重要特性: 线程安全 连接池 客户端SSL/TLS验证 文件分部编码上传 协助处理重复请求和HTTP重定位 支持压缩编码 支持HTTP和SOCKS...代理 一、get请求 urllib3主要使用连接池进行网络请求的访问,所以访问之前我们需要创建一个连接池对象,如下所示: import urllib3 url = "http://httpbin.org...八、重试和重定向 import urllib3 http = urllib3.PoolManager() #重试 r = http.request('post','http://httpbin.org...) 禁用警告: import urllib3 urllib3.disable_warnings() #禁用各种警告 url = "https://www.12306.cn/mormhweb/" http

1.3K20

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

调用时使用 application/x-www-form-urlencoded : 浏览器提交 Web 表单时使用 在使用服务器提供的 RESTful 或 SOAP 服务时, Content-Type 设置错误会导致服务器拒绝服务....install_opener(opener) 3.Timeout 设置 上一节已经说过urlopen方法了,第三个参数就是timeout的设置,可以设置等待多久超时,为了解决一些网站实在响应过慢而造成的影响...基本上这个也很少见,不过还是有一些地方比如amazon的S3云服务里面就用的这个方法来删除资源。 如果要使用 HTTP PUT 和 DELETE ,只能使用比较低层的 httplib 库。...转载于: 静觅 » Python爬虫入门四之Urllib库的高级用法 *************c程序员的冷笑话********************************** 诸葛亮是一个优秀的程序猿...六出祈山,七进中原,鞠躬尽瘁,死而后已的诸葛亮只因为有一个错误的case-马谡,整个结构就被break了!

77070

Python3 错误和异常

作为Python初学者,在刚学习Python编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍。 Python有两种错误很容易辨认:语法错误和异常。...语法错误 Python 的语法错误或者称之为解析错,是初学者经常碰到的,如下实例 ? Python3 错误和异常 这个例子中,函数 print() 被检查到有错误,是它前面缺少了一个冒号(:)。...语法分析器指出了出错的一行,并且在最先找到的错误的位置标记了一个小小的箭头。 异常 即便Python程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误被称为异常。...Python3 错误和异常 ? Python3 错误和异常 ? Python3 错误和异常 用户自定义异常 你可以通过创建一个新的异常类来拥有自己的异常。...Python3 错误和异常 在这个例子中,类 Exception 默认的 init() 被覆盖。

87620

Python 3 错误与异常处理】

语法错误 Python 的语法错误或者称之为解析错,如下实例: for i in range(0,100) print(i) 程序运行出错: ?...for语句结尾少了一个冒号 语法分析器指出了出错的一行,并且在最先找到的错误的位置标记了底色 异常定义 即便Python程序的语法是正确的,在运行它的时候,也有可能发生错误。...运行期检测到的错误被称为异常。 大多数的异常都不会被程序处理,都以错误信息的形式展现在这里: a = '3' b = 0 c = a + b print(c) 程序运行会抛出异常: ?...try: a = '3' b = 0 c = a + b print(c) except: print('字符型数据不能与整型数据进行加运算!')...所以对于容易出现错误或者不知道会不会出错的代码最好使用try语句,这样能大大的提高程序的容错性。try类用法远不只这么简单,感兴趣的小伙伴可深入研究。

54730

Python3 错误和异常

Edit 笔记内容:Python3 错误和异常 笔记日期:2017-11-12 ---- Python3 错误和异常 语法错误 异常 异常处理 抛出异常 用户自定义异常 finally语句 预定义的清理行为...程序也是如此会出现各种各样的错误,同理不同的异常错误有不同的异常错误处理方法。...在python中我们可以通过try-except语句来捕捉异常,语法错误的话开发工具都会有提示的。...ZeroDivisionError: division by zero >>> 4 + spam*3 Traceback (most recent call last):   File "...异常处理 在python中通过try-except语句来处理异常,例如将可能会出现不能被0整除异常的代码写在try代码块里,try代码块里的代码执行过程中出现异常后,就会执行except代码块里的代码,

91710

Python - pydantic(3错误处理

常见触发错误的情况 如果传入的字段多了会自动过滤 如果传入的少了会报错,必填字段 如果传入的字段名称对不上也会报错 如果传入的类型不对会自动转换,如果不能转换则会报错 错误的触发 pydantic 会在它正在验证的数据中发现错误时引发...验证代码不应该抛出 ValidationError 本身 而是应该抛出 ValueError、TypeError、AssertionError 或他们的子类 ValidationError 会包含所有错误及其发生方式的信息...访问错误的方式 e.errors():返回输入数据中发现的错误的列表 e.json():以 JSON 格式返回错误(推荐) str(e):以人类可读的方式返回错误 简单栗子 # 一定要导入 ValidationError...类型,如果不是int或者不能转换int会报错 p = Person(id="ss", name="hallen") except ValidationError as e:   # 打印异常消息...,不是 integer 自定义错误 # 导入 validator from pydantic import BaseModel, ValidationError, validator class Model

1.2K20
领券