python安装beautifulsoup失败_Win10环境下python36安装BeautifulSoup出现错误的解决办法

说明:win10 64位系统,Python3.6.3

Win10环境下安装BeautifulSoup4貌似没有任何问题,但是当使用时就会报错,错误如下:

通过报错信息到相应的位置去查看文件

try:

is_file = os.path.exists(possible_filename)

except Exception, e:     #line175

# This is almost certainly a problem involving

# characters not valid in filenames on this

# system. Just let it go.

pass

经过查找分析,此处是下载的模块是用python版本2编写的,它与我在计算机上安装的python版本具有不兼容的语法(版本3)。

解决办法,到这个地址下载最新的库安装包:

https://www.crummy.com/software/BeautifulSoup/bs4/download/4.6/

下载解压后,进入到相应的目录,在命令行下运行python3 setup.py文件

个人下载到Python36的scripts之下了C:\XXX\ Local\Programs\Python\Python36\Scripts

运行以上程序即可完成安装,可以检验一下:

>>> from bs4 import BeautifulSoup4

Traceback (most recent call last):

File "", line 1, in

File "c:\XXX\Programs\Python\Python36\Scripts\beautifulsoup4-4.6.3\bs4\__init__.py", line 54

'You are trying to run the Python 2 version of Beautiful Soup under Python 3. This will not work.'<>'You need to convert the code, either by installing it (`python setup.py install`) or by running 2to3 (`2to3 -w bs4`).'                                                                                                       ^

SyntaxError: invalid syntax

您正在尝试在python3下运行Python 2版本的Beautiful Soup。这是行不通的。你需要通过安装它来转换代码!

这还是报错啊,看来还得想办法咯。

解决办法:直接将压缩文件中的bs4复制到python安装目录下的lib中,然后再利用python自带工具2to3.py将版本2下的.py 文件转化为版本3下的文件。

提示:2to3.py位置:在python安装目录下的Tools/scripts/2to3.py。

最后,将bs4文件夹和2to3.py同时放到lib中,然后在cmd中定位到lib,运行:

2to3.py bs4 –w

2to3.py用法:2to3.py param1 (-w)

param1可以是要转换的.py文件,或者是文件夹,如果是文件夹,整个文件夹中的.py都会被转换。

-w可选,如果不写的话默认输出转换后的结果到显示屏,如果要把转换的文件再写入原文件,就需要加上。

但是,运行后好像没有什么变化啊,先进入python3试试吧,结果输入命令:

from bs4 import BeautifulSoup

让人大吃一惊,怎么还报错,明明已经运行了,怎么还会报错,网上各种博客都是这样的说法,没有其他的解法,无语中,在继续寻找解决办法吧。

终于,在一博客上找到了,具体细节可参考https://blog.csdn.net/Ltime/article/details/70307900

退出Python后,直接运行2to3 -w bs4

2to3 -w bs4

到最后输出如下的信息,则表示转换完成。输入Python3进入后,再次输入from bs4 import BeautifulSoup

没有报错,即表示安装成功!

>>> from bs4 import BeautifulSoup

>>>

如果上述安装方法都行不通,Beautiful Soup的发布协议允许你将BS4的代码打包在你的项目中,这样无须安装即可使用。到此就算完成了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/298282.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 Git Extensions 简单入门 Git

使用 Git Extensions 简单入门 Git—— 独立观察员 2015.11.25前言关于这个主题&#xff0c;之前我录了段视频教程&#xff0c;在本地看清晰度还可以&#xff0c;但传到优酷上就很不清晰了&#xff0c;即使是后来重制后还是一样不清晰&#xff0c;所以现在想整理成文字版。当然…

各省地图都像些什么?

全世界只有3.14 % 的人关注了爆炸吧知识人们常说中国地图的形状像一只雄鸡&#xff0c;但具体到每一个省区则并没有一个明确的说法。看看下面这一套省区地图对应的有趣的想象&#xff0c;你觉得像还是不像&#xff1f;★安徽有人说安徽像一只斜倒挂着的蝙蝠&#xff0c;你能看出…

android 蓝牙各种UUID(转载)

android 蓝牙各种UUID ServiceDiscoveryServerServiceClassID_UUID {00001000-0000-1000-8000-00805F9B34FB} BrowseGroupDescriptorServiceClassID_UUID {00001001-0000-1000-8000-00805F9B34FB} PublicBrowseGroupServiceClass_UUID {00001002-0000-1000-8000-00805F9B34F…

Silverlight中摄像头的运用—part2

Silverlight 4 中摄像头的运用—part1将跟踪颜色视作输入 好了&#xff0c;我们能够跟踪到这个颜色了&#xff0c;那这么做的意义是什么呢&#xff1f;实际上&#xff0c;我们可以根据它的位置来移动东西。接下来的例子中&#xff0c;创建的一个球会跟随这个颜色一起移动。你可…

python静态变量和静态方法_python的静态成员变量、实例成员变量、静态方法、类方法、实例方法...

标签&#xff1a;静态成员变量(类变量)和普通成员变量(实例变量)静态成员变量只能通过类名.变量名获得&#xff0c;实例成员变量&#xff0c;通过该实例引用.变量名获得。在实例对静态成员变量赋值时&#xff0c;实例python是动态类型的语言&#xff0c;没有特别的标志区分静态…

同学,解决下这个 Bug!

一些解决 Bug 的小技巧大家好&#xff0c;我是鱼皮。学编程的过程中&#xff0c;我们会遇到各式各样的 Bug&#xff0c;也常常因为它们而感到头秃。但随着你不断解决 Bug、积累经验&#xff0c;就会发现其实解决 Bug 也是有套路的。今天分享下鱼皮自己总结的解决 Bug 套路&…

C#编写串口通信程序(转)

一&#xff0e;概述 在Visual Studio 6.0中编写串口通讯程序&#xff0c;一般都使用Microsoft Communication Control&#xff08;简称MSComm&#xff09;的通讯控件&#xff0c;只要通 过对此控件的属性和事件进行相应编程操作&#xff0c;就可以轻松地实现串口通讯。但在Micr…

pfsense下的流量管理(转)

http://www.pppei.net/blog/post/331 在作流量管理时&#xff0c;这些概念很重要&#xff0c;不要迷失。。 这里再对Limiter 的源地址和目的地址做个说明&#xff0c;因为limiter是被应用在Lan接口的Rule里&#xff0c;相对pfsense来说&#xff0c;用户发往 Lan口的流量为In&am…

如果给你一个亿,你想去干嘛?各专业的科研狗是这样回答的……

全世界只有3.14 % 的人关注了爆炸吧知识“如果现在给你一个亿&#xff0c;你想去做什么&#xff1f;”每天都被穷醒的小天一看到&#xff0c;立马展开了丰富的想象力&#xff1a;首先&#xff0c;当然少不了买买买&#xff0c;将一切之前想要的、不想要的&#xff0c;贵的、更贵…

Apache并发处理模块

apache 2.x版本目前有好几种并发处理模块, 需要在编译的时候通过–with-mpmxxx指定&#xff0c;常用的并发处理模式是prefork和worker。prefork这种模式比较古老&#xff0c;纯进程并发&#xff0c;没有线程&#xff0c;处理方式跟apache1.x是一样的&#xff0c;适用于那些没有…

头文件定义全局变量_5.2 C++局部变量与全局变量 | 输出局部全局变量

C局部变量C局部变量是指&#xff1a;在一个函数内部定义的变量&#xff0c;它只在本函数范围内有效&#xff0c;也就是说只有在本函数内才能使用它&#xff0c;在此函数以外是不能使用这些变量的。同样&#xff0c;在复合语句中定义的变量只在本复合语句范围内有效&#xff0c;…

java float转换成long_在Java中如何将float转换为long或int数据类型?

float f1.2f;double dDouble.parseDouble(String.valueOf(f));System.out.println(d);直接转换会设计到精度问题&#xff0c;所以需要借助字符串 保证不丢失数据www.shufadashi.com防采集。楼主您好&#xff0c;如果float是个整数&#xff0c;强制转换即可&#xff0c;可以捕捉…

Spark 1.2 发布,开源集群计算系统

2019独角兽企业重金招聘Python工程师标准>>> Spark 1.2 发布&#xff0c;此版本包括 172 位贡献者和超过 1000 个 commits。 此版本包括 Spark 核心操作和性能改进&#xff1b;添加新的网络传输子系统&#xff0c;进行了较大的改进&#xff1b;Spark SQL 引入了一个…

[转载].SSRAM、SDRAM和Flash简要介绍

转CalmBright兄的博文&#xff1a;http://www.cnblogs.com/CalmBright/archive/2009/07/19/1526569.html Abstract 在用NIos II 调试sdram遇到了其容量计算的问题&#xff0c;现介绍如下 Introduction 问题1&#xff1a;什么是DRAM、SRAM、SDRAM&#xff1f; 答&#xff1a;名词…

调整 Docker 中 nginx 的日志级别

调整 Docker 中 nginx 的日志级别Intro最近发现我们的一个应用产生了很多日志&#xff0c;而这些日志大多都是 nginx 的 access_log&#xff0c;我们默认会把标准输出收集到 es 里分析应用日志&#xff0c;但是很多都是 access_log 就可能会掩盖掉真实的错误日志&#xff0c;所…

Oracle B-Tree Index 原理

一. B-Tree Index 原理 官网说明&#xff1a; No index structure can satisfy all needs, but the self-balancing B-tree index comes closest to optimizing the performance of searches on large sets of data. Each B-tree node holds multiple keys and pointers. The m…

曾改变世界的最强科学,为什么我们对它的误解却越来越多?

古往今来&#xff0c;我们评价一个人有学识&#xff0c;总是形容&#xff1a;“上知天文下知地理”。也会要求一个人“读万卷书&#xff0c;行万里路”。美国认知心理学家Nora S. Newcombe认为&#xff1a;孩子常常看地图、爱看地图&#xff0c;能提高他们的空间想象力&#xf…

java语言程序设计一_java语言程序设计(一)-1

java 语言的特点是&#xff1a;强类型&#xff0c;制定了比较多的语言规范&#xff0c;尽可能在编译阶段检测出更多的错误及警告。编译和解释&#xff0c;首先将源代码编译成codebyte&#xff0c;运行时&#xff0c;java的运行系统装载和链接需要执行的类&#xff0c;并做必要的…

oracle 创建自增列及其oracle表的字段的子节点的查询

首先创建序列&#xff1a; create sequence 序列名 start with 1 increment by 1 nomaxvalue nocycle 其次创建触发器&#xff1a; create or replace trigger 触发器名 before insert on 表名称 for each rowbeginselect 序列名.nextval into:new.表的列名 from dual;end;…