Python3.X出现AttributeError: module ‘urllib’ has no attribute ‘urlopen’错误[通俗易懂]

研究用Python写爬虫,下载一个网页。报错代码如下importurllibdefgetHtml(url):page=urllib.urlopen(url)html=page.read()returnhtmlhtml=getHtml(“http://www.baidu.com”)print(html)运行时报错:Attribute

大家好,又见面了,我是你们的朋友全栈君。

研究用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.__file__)
def getHtml(url):
    page = urllib.request.urlopen(url)
    html = page.read()
    return html

html = getHtml("http://www.baidu.com")

print(html)

运行截图如下:

Python3.X出现AttributeError: module 'urllib' has no attribute 'urlopen'错误[通俗易懂]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128779.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • progressdialog进度框_ProgressDialog进度对话框「建议收藏」

    progressdialog进度框_ProgressDialog进度对话框「建议收藏」ProgressDialog是AlertDialog类的一个扩展,可以为一个未定义进度的任务显示一个旋转轮形状的进度动画,或者为一个指定进度的任务显示一个进度条。一个对话框中显示一个进步指标和一个可选的文本信息或一个视图。只有文本信息或一个视图,可以同时使用。对话框可以按back键取消。二、方法:setProgressStyle()设置进度条风格setTitle()设置Progre…

    2022年7月14日
    15
  • TensorFlow2.0安装_tensorflow中run

    TensorFlow2.0安装_tensorflow中runTensorflow2.4.1前言Tensorflow简介Anaconda简介Anaconda安装TensorFlowCPU&GPUTensorflow安装Pycharm&TensorflowTensorflow&HelloworldHelloworldSession()后序前言目前考虑进入梦寐以求的机器学习、人工智能等领域的学习,因此安装主流的机器学习框架Tensorflow迫在眉睫。然而网上的网上安装教程大多是1.xx版本的。目前安装的环境

    2022年8月27日
    6
  • 利用iframe和location.hash实现跨域

    利用iframe和location.hash实现跨域原理是利用location.hash来进行传值。在url:http://a.com#helloword中的‘#helloworld’就是location.hash,改变hash并不会导致页面刷新,所以可以利用hash值来进行数据传递,当然数据容量是有限的。假设域名a.com下的文件cs1.html要和cnblogs.com域名下的cs2.html传递信息,cs1.html首先创建自动创建一个隐藏

    2022年7月16日
    22
  • 字节、字、bit、byte的关系「建议收藏」

    字节、字、bit、byte的关系「建议收藏」字word 字节byte 位bit 字长是指字的长度1字节=8位(1byte=8bit)1字=2字节(1word=2byte)一个字节的字长是8一

    2022年8月2日
    8
  • 移动机器人轮式里程计

    移动机器人轮式里程计移动机器人灵魂三问:我在哪?我要去哪里?怎么去?其中,第一问对应机器人定位问题。定位问题可阐述为:移动机器人根据自身状态、传感器信息实时确定自己在世界(全局或局部)中的位置与姿态。阿克曼转向的无人驾驶汽车的定位方案主要有:轮式里程计、视觉里程计、激光里程计、惯性导航模块(IMU+GPS)以及多传感器融合。轮式里程计是一种最简单,获取成本最低的方法。与其它定位方案一样,轮式里程计也需要传感器感知外部信息,只不过,轮式里程计采用的电机转速测量模块是一种成本非常低廉的传感器。本文对搭建智能小车系统过程.

    2022年6月15日
    39
  • ViewPager的addOnPageChangeListener方法详解

    ViewPager的addOnPageChangeListener方法详解关于上篇博客中写道了ViewPager的拖动状态监听的方法有网友私信问我不太明白里面的逻辑,我估摸着还是对ViewPager不太熟悉,所以就没一一回复在此开篇帖子写下关于ViewPager的具体用法,ViewPage使用时,最关键的代码就是addOnPageChangeListener,传入一个ViewPager.OnPageChangeListener对象。下面做先给大家贴上google的官方源

    2022年7月22日
    20

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号