是否可以使用 BeautifulSoup 只获取没有类或 id 的标签?

2024-01-03

我有数千个 HTML 网站,我正在尝试过滤这些网站中的文本。

我正在用漂亮的汤来做这个。get_text()从这些网站给我提供了很多不必要的信息。

因此我写了一个循环:

l = []
for line in text5:                   
    soup = bs(line, 'html.parser')
    p_text = ' '.join(p.text for p in soup.find_all('p'))  
    k = p_text.replace('\n', '')
    l.append(k)

但是这个循环给了我以开头的标签中的所有内容<p.

例如:

我想要两个普通之间的一切<p>标签。 但我也从这样的内容中获取内容:

<p class="header-main__label"> bla ba </p>.

我可以告诉 BeautifulSoup 只得到简单的吗<p> tags?


您可以设置False for class and id它会获得标签而无需class and id

soup.find_all('p', {'class': False, 'id': False})

或(词class_ has _因为有关键字class在Python中)

soup.find_all('p', class_=False, id=False)

from bs4 import BeautifulSoup as BS

text = '<p class="A">text A</p>  <p>text B</p>  <p id="C">text C</p>'

soup = BS(text, 'html.parser')

# ----

all_items = soup.find_all('p', {'class': False, 'id': False})

for item in all_items:
    print(item.text)

# ---

all_items = soup.find_all('p', class_=False, id=False)

for item in all_items:
    print(item.text)

EDIT:如果您想要没有任何属性的标签,那么您可以使用过滤项目not item.attrs

for item in all_items:
    if not item.attrs:
        print(item.text)

from bs4 import BeautifulSoup as BS

text = '<p class="A">text A</p> <p>text B</p> <p id="C">text C</p> <p data="D">text D</p>'

soup = BS(text, 'html.parser')

all_items = soup.find_all('p')

for item in all_items:
    if not item.attrs:
        print(item.text)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否可以使用 BeautifulSoup 只获取没有类或 id 的标签? 的相关文章

  • Python 中的字节数组

    如何在 Python 中表示字节数组 如 Java 中的 byte 我需要用 gevent 通过网络发送它 byte key 0x13 0x00 0x00 0x00 0x08 0x00 在Python 3中 我们使用bytes对象 也称为s
  • 如何使用 pyinstaller 包含文件?

    我也使用 tkinter 使用 python 3 7 编写了一个程序 由于我使用的是外部图片 因此当我将所有内容编译为一个 exe 时 我需要包含它们 我试过做 add data bg png files 但我仍然收到此错误 tkinter
  • for 循环如何评估其参数

    我的问题很简单 Does a for循环评估它每次使用的参数 Such as for i in range 300 python 是否会为此循环的每次迭代创建一个包含 300 个项目的列表 如果是的话 这是避免这种情况的方法吗 lst ra
  • 将 numpy 数组写入文本文件的速度

    我需要将一个非常 高 的两列数组写入文本文件 而且速度非常慢 我发现如果我将数组改造成更宽的数组 写入速度会快得多 例如 import time import numpy as np dataMat1 np random rand 1000
  • 如何使用显式引用转储 YAML?

    递归引用非常适合ruamel yaml or pyyaml ruamel yaml dump ruamel yaml load A A id001 id001 然而 它 显然 不适用于普通引用 ruamel yaml dump ruamel
  • 可以用 Django 制作移动应用程序吗?

    我想知道我是否可以在我的网站上使用 Django 代码 并以某种方式在移动应用程序 Flutter 等框架中使用它 那么是否可以使用我现在拥有的 Django 后端并在移动应用程序中使用它 所以就像models views etc 是的 有
  • WindowsError:[错误 126] 使用 ctypes 加载操作系统时

    python代码无法在Windows 7平台上运行 def libSO lib ctypes cdll LoadLibrary ConsoleApplication2 so lib cfoo2 1 3 当我尝试运行它时 得到来自python
  • python 中的 Johansen 协整检验

    我找不到任何有关在处理统计和时间序列分析 pandas 和 statsmodel 的 Python 模块中执行 Johansen 协整检验的功能的参考 有谁知道是否有一些代码可以执行时间序列之间的协整测试 现在 这已在 Python 的 s
  • Pandas 滚动窗口 Spearman 相关性

    我想使用滚动窗口计算 DataFrame 两列之间的 Spearman 和 或 Pearson 相关性 我努力了df corr df col1 rolling P corr df col2 P为窗口尺寸 但我似乎无法定义该方法 添加meth
  • 如何使用 Django 项目设置 SQLite?

    我已阅读 Django 文档 仅供参考 https docs djangoproject com en 1 3 intro tutorial01 https docs djangoproject com en 1 3 intro tutor
  • 与 while 循环一样,如何跳过 for 循环中的步骤?

    我尝试像 while 循环一样跳过 for 循环中的几个步骤 在 while 循环中 步骤根据特定条件进行调整 如下面的代码所示 i 0 while i lt 10 if i 3 i 5 else print i i i 1 result
  • django-admin.py makemessages 不起作用

    我正在尝试翻译一个字符串 load i18n trans Well Hello there how are you to Hola amigo que tal 我的 settings py 文件有这样的内容 LOCALE PATHS os
  • 如何使用 paramiko 查看(日志)文件传输进度?

    我正在使用 Paramiko 的 SFTPClient 在主机之间传输文件 我希望我的脚本打印文件传输进度 类似于使用 scp 看到的输出 scp my file user host user host password my file 1
  • 使用 numpy 在 python 中执行最大方差旋转

    我正在研究矩阵的主成分分析 我已经找到了如下所示的组件矩阵 A np array 0 73465832 0 24819766 0 32045055 0 3728976 0 58628043 0 63433607 0 72617152 0 5
  • Python 类型安全吗?

    根据维基百科 https en wikipedia org wiki Type system Type safety and memory safety 如果一种语言不允许违反类型系统规则的操作或转换 计算机科学家就认为该语言是 类型安全的
  • 是否可以将 pd.Series 分配给无序 pd.DataFrame 中的列而不映射到索引(即不重新排序值)?

    在 Pandas 中创建或分配新列时 我发现了一些意外的行为 当我对 pd DataFrame 进行过滤或排序 从而混合索引 然后从 pd Series 创建新列时 Pandas 会重新排序该系列以映射到 DataFrame 索引 例如 d
  • 如何使用 matplotlib 为圆柱体的每个单独面添加颜色

    我正在尝试为圆柱体的每个面着色 但是我不确定如何进行 我尝试了以下方法 for i in range 10 col append for i in range 10 for j in range 20 col i append plt cm
  • Python:高精度time.sleep

    你能告诉我如何在 Win32 和 Linux 上的 Python 2 6 中获得高精度睡眠函数吗 您可以在中使用浮点数sleep http docs python org library time html time sleep 该参数可以
  • 如何循环遍历字典列表并打印特定键的值?

    我是 Python 新手 有一个问题 我知道这是一个非常简单的问题 运行Python 3 4 我有一个需要迭代并提取特定信息的列表 以下是列表 称为部分 的示例 已截断 数千个项目 state DEAD id phwl type name
  • 缓存 Flask-登录 user_loader

    我有这个 login manager user loader def load user id None return User query get id 在我引入 Flask Principal 之前它运行得很好 identity loa

随机推荐

  • 您能否将 Google Cloud 网络控制台登录限制在某个 IP 地址范围内?

    我在使用 Google Cloud Platform 特别是我工作的 IT 安全部门的 Big Query 时遇到了一些阻力 争论的焦点是任何人都可以从任何地方登录 有什么办法只允许来自特定 IP 范围的 GCP 访问吗 或者是否有其他方法
  • Azure 函数请求正文为 xml 而不是 json

    我正在跟进这个例子 https learn microsoft com en us azure azure functions functions test a function在 Azure 函数中创建 javascript 函数并使用
  • php 的 mysql_real_escape_string() 的等效 JavaScript 代码是什么?

    等效的 javascript 代码是什么mysql real escape string 基于PHP 文档 http php net manual en function mysql real escape string php该方法的作用
  • 如何在 felm() 函数之后绘制交互的边际效应

    我基于具有一堆单位固定效应的 巨大 面板数据进行了回归 所以我使用了包 lfe 中的函数 felm 此外 我在回归中有两个连续变量的交互项 但是 当绘制 x 对 y 的边际效应如何随 x2 变化时 felm 生成的对象似乎通常与大多数绘图函
  • 为什么我使用 context().method() 违反了状态图断言?

    我已经为一个项目开发了一些概念代码 我很快就会从事该项目 该项目适合于状态机设计 我认为 boost statechart 会做得很好 然而 当我尝试使用 context 时 我遇到了障碍 这是一个示例 我很乐意提供更多代码 但我认为这是相
  • 如何“安全”地使用 window.history.pushState

    我想使用window history pushState 支持浏览器的功能 不幸的是我在 Firefox 上遇到错误 类型错误 history pushState 不是函数 如何才能避免这种情况呢 虽然我没有在 JavaScript 中测试
  • Swift 1.2 中的可变@autoclosure ?

    现在 autoclosure是参数声明的一部分而不是类型 如何声明函数采用可变数量的自动闭包 Before public func coalesce
  • matplotlib show() 不能工作两次

    我有一个奇怪的问题 与 matplotlib 有关 如果我运行这个程序 我可以多次打开和关闭同一个图形 import numpy from pylab import figure show X numpy random rand 100 1
  • 高流量网站的 Facebook 身份验证:空访问令牌、空 /me

    目前 我们有一个在 Facebook 选项卡上运行的应用程序 该应用程序收到了大量流量 每隔几秒钟就有人注册 而且大多数都成功了 但是我遇到了以下问题 根本没有收到访问令牌 空响应 没有错误 或者如果收到 则对 me 的 API 调用失败
  • 检测 iOS UIDevice 方向

    我需要检测设备何时处于纵向 以便我可以发出特殊的动画 但我不希望我的视图自动旋转 当设备旋转为纵向时 如何覆盖自动旋转的视图 我的应用程序只需要以横向显示它的视图 但如果我希望能够检测到纵向旋转 我似乎也需要支持纵向 尝试在应用程序加载或视
  • 将 JSONB 转换为缩小(无空格)字符串

    如果我转换一个文本值 例如 a b 到 JSONB 然后返回到文本空格 之间添加 和 psql gt select a b jsonb text text a b 1 row 如何将文本转换为 jsonb 以便我可以使用 jsonb 函数
  • C#中如何检查字符串的最后一个字符?

    我想在 C 中找到字符串的最后一个字符 然后将其放入if陈述 然后 如果最后一个字符等于 A B 或 C 则应执行某个操作 C 中如何获取字符串的最后一个字符 Use the EndsWith 字符串方法 if string EndsWit
  • PHP:“即时”向电子邮件添加附件?

    我刚刚让PHP的邮件功能在我的测试环境中正常工作 我有一个输出许多字符串的 PHP 应用程序 将这些字符串转换为附件真是太好了 TXT 文件 在电子邮件中 无需先将它们存储在磁盘上并重新读回 这在 PHP 中可能吗 是的 这是可能的 您只需
  • 包含任何内容 ([_]) 和任何内容 (_) 的列表有什么区别

    我试图完成以下任务 如果我有两个列表 L1 和 L2 我希望结果 R 是 L1 中 L2 的 减法 Example L1 1 2 3 L2 2 3 4 5 R 1 我能够做到这一点 但我不知道两者之间有什么区别 and 如果我这样做 dif
  • 在 R 中的点阵图例图中包含线和点

    大家好 我正在处理格子图 一切正常 但我在图例方面遇到了一些麻烦 我在用xyplot 而且效果非常棒 我的数据框是NM I add dput 最后部分的版本 AMes A2009 A2010 A2011 A2012 A2013 A2014
  • 开关参数和powershell.exe -File参数

    据微软称 在极少数情况下 您可能需要为开关参数提供布尔值 要为 File 参数值中的开关参数提供布尔值 请将参数名称和值括在大括号中 如下所示 File Get Script ps1 All False 我有一个简单的脚本 CmdletBi
  • 如何使用 dask 和特定 AWS 配置文件从 s3 读取镶木地板文件

    如何使用 s3 读取 parquet 文件dask以及特定的 AWS 配置文件 存储在凭证文件中 达斯克用途s3fs它使用boto 这是我尝试过的 gt gt gt import os gt gt gt import s3fs gt gt
  • CakePHP - $hasMany 模型中的订单被忽略

    我有一个具有 hasMany 属性的模型 如果我只有以下内容 var hasMany OtherModel 在 OtherModel 扩展 AppModel 类中 我有以下内容 var order colour id DESC 该顺序被忽略
  • 一个域名有可能有多个对应的IP地址吗?

    例如 当我们连接到www example com 首先我们尝试连接到192 0 2 1 如果第一次尝试失败 那么我们会尝试192 0 2 222 是否可以 一个域名可以注册多个备份IP吗 这是循环 DNS 这是一个非常简单的负载平衡解决方案
  • 是否可以使用 BeautifulSoup 只获取没有类或 id 的标签?

    我有数千个 HTML 网站 我正在尝试过滤这些网站中的文本 我正在用漂亮的汤来做这个 get text 从这些网站给我提供了很多不必要的信息 因此我写了一个循环 l for line in text5 soup bs line html p