python解析库Beautiful Soup安装的详细步骤
作者:smart_cat 发布时间:2023-06-23 04:29:21
一、Beautiful Soup的安装
Beautiful Soup是Python的一个HTML或XML的解析库,使用它可以很方便地从网页中提取数据。它的解析器是依赖于lxml库的,所以在此之前,请确保已经成功安装好了lxml库。
本文环境是windows 10 64位+ python3.11, 此处以windows安装为例。
1.1 安装lxml库
lxml库的安装,首先尝试使用pip进行安装:
pip install lxml
如果pip安装报错,比如提示缺少libxml2库等信息,那么可以采用wheel方式安装
采用wheel方式安装,首先需要安装wheel
pip install wheel
然后去官网https://pypi.org/project/lxml/下载lxml对应的的wheel版本, 当前最新版本是lxml 4.9.1, 点击Download files
在列出的files里面,选出和自己的版本相匹配的,例如你的python版本是3.10的,你的机器是windows系统,64位版本,那么就选lxml-4.9.1-cp310-cp310-win_amd64.whl
这里比较坑的一点是,python版本最新的已经是3.11版本了,但是lxml没有对应的官方windows 311版本,只有linux下的311版本。可以选择对python版本降级,比如降到python3.10版。
或者在https://www.lfd.uci.edu/~gohlke/pythonlibs/里,倒是可以找到311版本的windows wheel安装包,可以自行尝试。
安装wheel包的话,到wheel安装包所在目录执行pip 命令即可,或者带上全路径也可以
pip install lxml-4.9.0-cp311-cp311-win_amd64.whl
1.2 安 * eautifulsoup4
推荐使用pip来安装,执行下述安装命令
pip install beautifulsoup4
1.3 验证beautifulsoup4能否运行
执行以下代码,能成功输出hello,就说明可以成功使用beautifulsoup4进行解析了。
如果只有beautifulsoup4安装成功,lxml库没有正确安装的话,下面代码不能成功执行。
from bs4 import BeautifulSoup as bs
soup = bs('<p>hello</p>', 'lxml')
print(soup.p.string)
补充:Python 安 * eautifulsoup4库失败或引用错误的解决办法
1、首先下载官网BeautifulSoup4软件包里面的beautifulsoup4库
2、然后解压缩到G:\python\Lib\site-packages\bs4目录下,打开cmd窗口,进入到解压目录下,进入 G:\python\Lib\site-packages\bs4\beautifulsoup4-4.3.2\beautifulsoup4-4.3.2
3、在该目录下运行cmd
python setup.py build
python setup.py install
可能会遇到的报错 :error in pymmseg setup command: use_2to3 is invalid.
报错的解决方案:需要把版本降低,小于58的最后一个版本是57.5.0,pip降一下就可以了:
pip install setuptools==57.5.0
就可以重新安装库了
没遇到报错,直接到这步骤即可
导入模块(测试模块导入是否成功)
进入cmd-python输入:
from bs4 import BeautifulSoup
注意:导入这个库是要大写的,小写不行。
问题解决成功!
ps:这是我碰到的问题,解决了很久也问了很多人,还是没能够解决是靠自己经过百度查询了很多的资料才解决的,希望能帮助到你们。
来源:https://blog.csdn.net/hubing_hust/article/details/128278550
猜你喜欢
- MySql explain语句的返回结果中,filtered字段要怎么理解?MySql5.7官方文档中描述如下:The filte
- 我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的
- 发送电子邮件在即时通信软件如此发达的今天,电子邮件仍然是互联网上使用最为广泛的应用之一,公司向应聘者发出录用通知、网站向用户发送一个激活账号
- 前言之前我们在路由匹配的时候,一个url对应一个函数,其实我们还可以一个url对应一个类,这个就是CBV,下面我们来简单的介绍一下CBV一、
- 本文主要关于python的正则表达式的符号与方法。findall: 找寻所有匹配,返回所有组合的列表search: 找寻第一个匹配并返回su
- python数据与matlab互通SciPy有时候需要利用python进行科学计算,但需要Matlab进行交互式画图,因此需要掌握pytho
- 本文实例讲述了JS实现合并json对象的方法。分享给大家供大家参考,具体如下:一、问题:求json对象合并的方法var a ={"
- 应用正则表达式的全局匹配,可以匹配出字符出现的次数,比较这些次数,将最大的保存并返回。代码如下: var countMost = funct
- import retext='V101_renow.Android.2.2.Normal.1.Alpha.apk?IMSI=4600
- 关于作者 王丹丹 , IBM 中国系统与技术中心软件工程师,自从 2006 年加入 IBM,一直从事 Web 系统设计和开发工作,有五年 P
- 本文实例讲述了Python实现二叉树及遍历方法。分享给大家供大家参考,具体如下:介绍:树是数据结构中非常重要的一种,主要的用途是用来提高查找
- 背景:我们在使用数据库的过程中,很多时候要追求性能,特别在处理大批量数据的时候更希望快速处理。那么对SQL SERVER而言,数据库实现大批
- 在开发C/S结构的大型数据库应用软件时,一般情况下,软件开发人员和数据库设计人员并不是同一个人,这就需要协商好一些即可由程序设
- 抽象工厂模式(Abstract Factory Pattern):属于创建型模式,它提供了一种创建对象的最佳方式。在抽象工厂模式中,接口是负
- 本文实例讲述了Python学习笔记之Break和Continue用法。分享给大家供大家参考,具体如下:Python 中的Break 和 Co
- 错误信息: RuntimeError: in-place operations can be only used on variables
- 一、前言Go程序像C/C++一样,如果开发编码考虑不当,会出现cpu负载过高的性能问题。如果程序是线上环境或者特定场景下出现负载过高,问题不
- 计算交并比:交的面积除以并的面积。要求矩形框的长和宽应该平行于图片框。不然不能用这样的公式计算。原理,从一维上来理解:两条红线的距离之和减去
- 问题,在一个程序内构建好了一个图,运行完之后想重新使用这个图进行计算,或者想同时在train完的时候做test,就会提示***变量已存在。解
- 概论在讨论ECMAScript闭包之前,先来介绍下函数式编程(与ECMA-262-3 标准无关)中一些基本定义。 然而,为了更好的解释这些定