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
猜你喜欢
- 某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法。用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需
- 本文介绍python如何进行截图保存的几种方法,在测试过程中,是有必要截图,特别是遇到错误的时候进行截图。结合Python其它模块如time
- 在新旧版的torch中的傅里叶变换函数在定义和用法上存在不同,记录一下。1、旧版fft = torch.rfft(input, 2, nor
- 1.说明redis作为一个缓存数据库,在各方面都有很大作用,Python支持操作redis,如果你使用Django,有一个专为Django搭
- 通过在网络上查找资料和自己的尝试,我认为以下系统参数是比较关键的:(1)、back_log:要求 MySQL 能有的连接数量。当主要MySQ
- 人类学是关于人的研究;社会人类学(social anthropology)是研究人类社会的学科。社会人类学还可以理解成“文化翻译”(the
- 本文实例讲述了python实现简单ftp客户端的方法。分享给大家供大家参考。具体实现方法如下:#!/usr/bin/python# -*-
- Dreamweaver出现乱码,大致为两种情况:一是没有标明主页制作所用的文字,这种情况下很简单就可以
- <?php /********************************************** *&n
- 远程(如通过互联网)连接access数据库的示例:首先,需要使用TCP/IP,ADO及XML(需要安装Microsoft XML 4.0。)
- 1.collections模块collections模块自Python 2.4版本开始被引入,包含了dict、set、list、tuple以
- 3. 迭代器3.1. 迭代器(Iterator)概述迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都
- 交换变量 x = 6y = 5x, y = y, xprint x>>> 5print y>>>
- 前言人类都是视觉动物,不管是男生还是女生看到漂亮的小姐姐、小哥哥就想截图保存下来。可是截图会对画质会产生损耗,截取的画面不规整,像素不高等问
- 一、题目描述题目内容:题目示例:题目解析:1 <= nums.length <= 104-107 <= nums
- 整数对象在Python内部用PyIntObject结构体表示:typedef struct {PyObject_HEADlong ob_iv
- 如下所示:# 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value
- 本节我们首先来尝试识别最简单的一种验证码,图形验证码,这种验证码出现的最早,现在也很常见,一般是四位字母或者数字组成的,例如中国知网的注册页
- 生成Fiboncci Fn数有Θ(1),Θ(n)甚至指数级的算法,不过有Θ(log n)的吗?告诉你,有。首先,关于Fibonacci数,有
- 导读:最近使用Thinkphp5.1做开发,在使用LOG_PATH常量(日志路径)时发生报错,因为之前一直使用5.0的框架,换到5.1版本后