迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python 中错误 AttributeError: Module Urllib Has No Attribute Request

作者:迹忆客 最近更新:2023/07/04 浏览次数:

由于Python中的urllib.request是一个独立的模块,因此这种情况下urllib无法实现。 如果一个模块有多个子模块,单独加载每个子模块可能会很昂贵,并且会导致与程序无关的项目出现问题。

Python 将缓存导入,因为您正在使用导入的模块供其自身使用,使其成为对象的一部分。


Python 中 AttributeError:module 'urllib' has no attribute 'request'

当您尝试通过导入 URL 库打开 URL 链接时,此错误是 Python 中的常见异常。 为了理解这个错误,我们举个例子。

代码示例:

import urllib
request = urllib.request.Request("http://www.python.org")

输出:

AttributeError: module 'urllib' has no attribute 'request'

使用此类包时,您有时可能会导入所需的模块。 urllib 模块不必仅仅因为您只需要任何 url 的一小部分而加载所有内容。

导入url正在访问整个库; 这就是为什么它显示错误。


修复 Python 中的 AttributeError: module 'urllib' has no attribute 'request'

您可以导入 import urllib.request as urllib 或以其他方式使用 import urllib.request urllib.request.urlopen('http://www.python.org',timeout=1)

import urllib.request

with urllib.request.urlopen("http://www.python.org") as url:
    s = url.read()
    print(s)

输出:

<!doctype html>
<head>
    <meta charset="utf-8">
'
'
'
'
from urllib.request import Request, urlopen
def get_page_content(url, head):

  req = Request(url, headers=head)
  return urlopen(req)

url = 'https://example.com'
head = {
  'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36',
  'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
  'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
  'Accept-Encoding': 'none',
  'Accept-Language': 'en-US,en;q=0.8',
  'Connection': 'keep-alive',
  'refere': 'https://example.com',
  'cookie': """your cookie value ( you can get that from your web page) """
}

data = get_page_content(url, head).read()
print(data)

输出:

<!doctype html>\n<html>\n<head>\n    <title>Example Domain</title>\n\n    <meta charset="utf-8" />\n
'
'
'
href="https://www.iana.org/domains/example">More information...</a></p>\n</div>\n</body>\n</html>\n'

您应该从父模块 urllib 导入子模块请求,而不是完全导入 urllib 模块,然后尝试将其子模块请求作为属性访问。

import urllib print(urllib.request) 不起作用,但 from urllib import request print(request)import urllib.request 都成功。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Python 中错误 Address Already in Use

发布时间:2023/07/09 浏览次数:173 分类:Python

我们将通过示例介绍Python中何时出现 Address already in use 错误以及如何解决。Python 中的错误Address already in use 本文将讲述运行使用端口的程序时发生的Python堆栈错误。

Python 中错误 ValueError: Math Domain Error

发布时间:2023/07/09 浏览次数:607 分类:Python

在本篇文章中,我们的目标是探索解决 Python 中的 ValueError: math domain error 错误的不同方法。当编码方面数学(基础或高级)的使用存在固有缺陷时,Python 中通常会引发 ValueError: math domain error 错

Python 错误 Name xrange Is Not Defined

发布时间:2023/07/09 浏览次数:153 分类:Python

本篇文章将介绍如何解决 Python 中 name 'xrange' is not defined 的错误。解决Python中name 'xrange' is not defined错误 让我们尝试理解为什么会发生这个特定的错误。 让我们首先尝试复制这个问题。

Python 中错误 AttributeError: __Enter__

发布时间:2023/07/09 浏览次数:2241 分类:Python

在 Python 中,AttributeError 是在未定义 __enter__ 函数的情况下通过 with 语句使用类的对象时导致的错误。

Python 错误 Error: Invalid Command Bdist_wheel

发布时间:2023/07/09 浏览次数:847 分类:Python

在 Python 中构建 wheel 时,有时 setup.py 可能会退出并出现错误 invalid command 'bdist_wheel'。 本篇文章将讨论在 Python 中解决此问题的可能解决方案。安装wheel包来修复Python中 Error:invalid command 'bdist_

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便