- 36
- 0
问题描述
有一个html中含有此片段:
<h1>蜘蛛侠:英雄远征 Spider-Man: Far from Home (2019)
<small class="label label-success">资源数 <b>( 60 )</b></small> </h1>
我想把蜘蛛侠:英雄远征 Spider-Man: Far from Home (2019)给提取出来
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
我尝试过film_name = soup.h1
name = film_name.string
其中soup是整个页面的html
会出错
你期待的结果是什么?实际看到的错误信息又是什么?
总是提示:
Traceback (most recent call last):
File "main.py", line 68, in <module>
get_more_film('http://pianyuan.la/m_S8oNccec0.html')
File "main.py", line 62, in get_more_film
number = number_div.find('b')
File "C:\Program Files\Python37\lib\site-packages\bs4\element.py", line 1578, in __getattr__
"ResultSet object has no attribute '%s'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?" % key
AttributeError: ResultSet object has no attribute 'find'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()? - 共 0 条
- 全部回答
-
我家g港有船 普通会员 1楼
BeautifulSoup 是一个 Python 库,用于解析 HTML、XML 和 HTML5 网页。其中,解析带有特殊格式的
h1标签的文本是一种常见的任务,这通常涉及到处理 HTML 文档中的标题标记和其相关的 HTML 元素。以下是如何使用 BeautifulSoup 解析带有特殊格式的
h1标签的文本的步骤:- 导入 BeautifulSoup 和需要的库:
python from bs4 import BeautifulSoup import re - 将 HTML 文档内容加载到 BeautifulSoup 对象中: ```python html_doc = """
Example BeautifulSoup 示例
这是一段带有特殊格式的文本。
这是一段包含 特殊字符 的文本。
这是一段带有 特殊字符 的文本。
这是一段包含 特殊字符 的文本。
这是一段包含
特殊字符的文本。这是一段包含 特殊字符 的文本。
这是一段包含 特殊字符 的文本。
""" soup = BeautifulSoup(html_doc, 'html.parser')
3. 使用 `find()` 方法查找带有特殊格式的 `h1` 标签:python h1_texts = soup.find_all('h1')`` 这将返回一个列表,其中包含所有` 标签在文档中的位置。每个元素将包含标签名称和文本内容,格式如下:
python h1_texts = [ {'name': 'BeautifulSoup 示例', 'text': '这是一段带有特殊格式的文本。'}, {'name': '这是一段包含 <strong>特殊字符</strong> 的文本。', 'text': '这是一段带有 <em>特殊字符</em> 的文本。'}, {'name': '这是一段包含 <u>特殊字符</u> 的文本。', 'text': '这是一段包含 <del>特殊字符</del> 的文本。'}, {'name': '这是一段包含 <cite>特殊字符</cite> 的文本。', 'text': '这是一段包含 <dfn>特殊字符</dfn> 的文本。'}, {'name': '这是一段包含 <dfn>特殊字符</dfn> 的文本。', 'text': '这是一段包含 <dfn>特殊字符</dfn> 的文本。'}, ]4. 遍历h1_texts列表并处理特殊字符: ```python for h1 in h1_texts: title = h1['name'] text = h1['text']# 处理特殊字符 title = re.sub(r'\b\w+\b', '', title) text = re.sub(r'\b\w+\b', '', text) print(f'Title: {title}, Text: {text}')``` 这将输出以下结果:
Title: BeautifulSoup 示例, Text: 这是一段带有特殊格式的文本。 Title: 这是一段包含 <strong>特殊字符</strong> 的文本, Text: 这是一段带有 <em>特殊字符</em> 的文本。 Title: 这是一段包含 <u>特殊字符</u> 的文本, Text: 这是一段包含 <del>特殊字符</del> 的文本。 Title: 这是一段包含 <cite>特殊字符</cite> 的文本, Text: 这是一段包含 <dfn>特殊字符</dfn> 的文本.在上述代码中,我们使用了正则表达式r'\b\w+\b'来处理h1标签中的特殊字符。正则表达式\b匹配单词边界,\w+匹配一个或多个字母、数字或下划线。在re.sub()函数中,我们将'\b\w+\b'替换为'',即删除匹配的字符,从而确保所有特殊字符都被正确地处理。注意:在实际应用中,你可能需要根据具体的 HTML 文档和需要解析的格式对正则表达式进行适当的修改。此外,如果标题中的特殊字符包含特定的HTML标签,如
<strong>或<em>,你可能需要使用更复杂的正则表达式或手动处理。 - 导入 BeautifulSoup 和需要的库:
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
