使用 Beautiful Soup 从“img”标签中提取“src”属性

2023-11-22

考虑:

<div class="someClass">
    <a href="href">
        <img alt="some" src="some"/>
    </a>
</div>

我想提取来源(即src)来自图像的属性(即img)使用 Beautiful Soup 标签。我使用 Beautiful Soup 4,但无法使用a.attrs['src']得到src,但我可以得到href。我应该怎么办?


您可以使用 Beautiful Soup 来提取srcHTML 的属性img标签。在我的例子中,htmlText包含img标签本身,但这也可以用于 URL,以及urllib2.

For URLs

from BeautifulSoup import BeautifulSoup as BSHTML
import urllib2
page = urllib2.urlopen('http://www.youtube.com/')
soup = BSHTML(page)
images = soup.findAll('img')
for image in images:
    # Print image source
    print(image['src'])
    # Print alternate text
    print(image['alt'])

对于带有 img 标签的文本

from BeautifulSoup import BeautifulSoup as BSHTML
htmlText = """<img src="https://src1.com/" <img src="https://src2.com/" /> """
soup = BSHTML(htmlText)
images = soup.findAll('img')
for image in images:
    print(image['src'])

Python 3:

from bs4 import BeautifulSoup as BSHTML
import urllib

page = urllib.request.urlopen('https://github.com/abushoeb/emotag')
soup = BSHTML(page)
images = soup.findAll('img')

for image in images:
    # Print image source
    print(image['src'])
    # Print alternate text
    print(image['alt'])

如果需要安装模块

# Python 3
pip install beautifulsoup4
pip install urllib3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Beautiful Soup 从“img”标签中提取“src”属性 的相关文章

  • 测试交互式Python程序

    我想知道python的哪些测试工具支持交互式程序的测试 例如 我有一个由以下人员启动的应用程序 python dummy program py gt gt Hi whats your name Joseph 我想要仪器Joseph所以我可以
  • Pygame 让精灵按照给定的旋转行走

    很久以前我做了一个Scratch脚本 我想用Pygame将其转换为Python 有很多示例显示图像的旋转 但我想知道如何更改精灵的旋转以使其沿给定方向移动 而不更改图像 这是我的暂存代码 这是我的 Pygame 精灵类 class Star
  • MATLAB 中的多个捕获组

    我有一个包含数字或字母的字符串a 可能紧随其后的是r or l 在 MATLAB 中 以下正则表达式返回为 gt gt regexp 10r 0 9 a l r match ans 10r 我希望10 and r分开 因为我有两个捕获组 有
  • Pandas 在列级别连接数据帧时添加键

    根据 Pandas 0 19 2 文档 我可以提供keys参数来创建结果多索引 DataFrame 一个例子 来自 pandas 文档 是 result pd concat frames keys x y z 我将如何连接数据框以便我可以在
  • 从 Django 基于类的视图的 form_valid 方法调用特殊(非 HTTP)URL

    如果你这样做的话 有一个 HTML 技巧 a href New SMS Message a 点击新短信打开手机的本机短信应用程序并预 先填写To包含所提供号码的字段 在本例中为 1 408 555 1212 以及body与提供的消息 Hel
  • 从 Python 将分层 JSON 数据写入 Excel xls?

    我想将一些数据从 python 写入 xlsx 我目前将其存储为 JSON 但它从 Python 中输出什么并不重要 单个文章的 JSON 如下所示 Word Count 50 Key Words Blah blah blah Foo Fr
  • Python ElementTree 获取带有命名空间的属性

    我试图访问 XML 中的 def 所以在这个例子中我会得到Evolus Common PlainTextV2作为输出 我似乎无法弄清楚如何获取具有名称空间的属性 如果我想得到id它工作得很好 Python for content ns in
  • Scapy:如何将新层(802.1q)插入现有数据包?

    我有一个数据包转储 想要将 VLAN 标记 802 1q 标头 注入到数据包中 怎么做 为了找到答案 我查看了Scapy 插入新层和记录问题 https stackoverflow com q 17259592 1381638 这确实很有帮
  • 如何使用 numpy 从一维数组创建对角矩阵?

    我正在使用 Python 和 numpy 来做线性代数 我表演了numpy对矩阵进行 SVD 以获得矩阵 U i 和 V 然而 i 矩阵表示为 1 行的 1x4 矩阵 IE 12 22151125 4 92815942 2 06380839
  • Preg_split 用逗号,忽略括号,PHP

    我必须分割一个字符串 并且我想避免用括号内的逗号分割它 那么我该如何实现呢 Example string string1 sString1 sString2 ssString1 ssString2 string2 string3 resul
  • TypeError:“NoneType”对象不可下标[重复]

    这个问题在这里已经有答案了 错误 names curfetchone 0 TypeError NoneType object is not subscriptable 我尝试检查缩进 但仍然有错误 我读到 如果数据库中没有文件名记录 变量名
  • 当 vbscript.regexp 工作时,VBA RegExp 会导致编译错误

    我正在为 Outlook 2013 的 VBA 编写一个脚本 它使用正则表达式 我发现的每个示例似乎都使用Set regex New RegExp创建一个正则表达式对象 当我尝试这个时 我得到了编译错误 用户定义类型未定义 我设法使用正则表
  • Python Tkinter 网格复选框

    我想知道是否有一种简单的方法可以使用 Tkinter 创建复选框网格 我正在尝试制作一个由 10 行和 10 列 即 100 个复选框 组成的网格 以便每行只能选择两个复选框 编辑 我正在使用带有spyder的python 2 7 到目前为
  • Pandas 中的数据透视表小计

    我有以下数据 Employee Account Currency Amount Location Test 2 Basic USD 3000 Airport Test 2 Net USD 2000 Airport Test 1 Basic
  • 在 matplotlib 中将 3D 背景更改为黑色

    我在将 3D 图表的背景更改为黑色时遇到问题 这是我当前的代码 当我将facecolor设置为黑色时 它会将图表内部更改为灰色 这不是我想要的 fig plt figure fig set size inches 10 10 ax plt
  • 向结构化 numpy 数组添加字段

    将字段添加到结构化 numpy 数组的最简洁方法是什么 是否可以破坏性地完成 或者是否有必要创建一个新数组并复制现有字段 每个字段的内容是否连续存储在内存中 以便可以有效地完成此类复制 如果您使用 numpy 1 3 还有 numpy li
  • 具有行业级约束的 SciPy 投资组合优化

    尝试在这里优化投资组合权重分配 通过限制风险来最大化我的回报函数 我可以毫无问题地通过简单的约束 所有权重之和等于 1 找到产生我的回报函数的优化权重 并做出另一个约束 即我的总风险低于目标风险 我的问题是 如何为每个组添加行业权重界限 我
  • 重写 PyGObject 中的虚拟方法

    我正在尝试实施高宽几何管理 http developer gnome org gtk3 3 2 GtkWidget html geometry management在 GTK 和 Python 中用于我的自定义小部件 我的小部件是来自的子类
  • 如何正确将 tflite_graph.pb 转换为 detector.tflite

    我正在使用tensorflow对象检测API使用tensorflow中的ssdlite mobilenet v2 coco 2018 05 09来训练自定义模型模型动物园 https github com tensorflow models
  • 使用 python/scipy 进行 voronoi 和 lloyd 松弛

    如何使用 Qhull 确定哪些 voronoi 单元 按索引 是 正确的 由 现有顶点 组成 我正在尝试使用 LLoyds 算法和 scipy spatial Voronoi 它是 Qhull 的包装器 生成的输入来执行约束松弛 就代码而言

随机推荐

  • 将图像保存在网络浏览器控件中,无需从互联网重新下载

    是否可以将网络浏览器控件中的图像直接保存到硬盘 而无需再次从互联网下载 假设我导航到一个包含 15 张图像的网站 它们都可以在我的网络浏览器中查看 但是我现在如何保存它们而不需要下载它们 这是我能找到的唯一方法 好奇是否其他人有更好的方法
  • 执行 AJAX 调用返回的 javascript 是否被认为是错误的形式?

    我正在修改一个现有的 Web 应用程序 该应用程序能够管理能够登录系统的用户 通过对话框修改用户详细信息时 更新数据将通过 AJAX 发送到服务器 返回几行 javascript 然后更新当前页面以反映这些更改 以便执行 这让我觉得很糟糕
  • REBOL3 - 不同分支之间有什么区别?

    不同的 Rebol 3 分支之间有什么区别 特别是新的 REN 分支 是它们运行的 平台 功能集 代码组织 C 标准合规性吗 这是一个注定会过时的答案 因此设置为社区维基 此信息截至Sep 2015 因此 如果在一段时间后更新此答案 请也修
  • 查看已删除的控制台输出

    我正在运行多个 Junit 测试 在控制台中运行测试结果被清除并填充当前测试的日志 包含先前测试日志的日志文件将存储在哪里 eclipse中有什么方法可以让我看到这样删除的日志 请尝试以下操作 打开您的运行配置 选择选项卡Common In
  • 当 Eclipse CDT 索引器卡住时我该怎么办?

    我正在使用 Eclipse CDT 2020 06 但我在早期版本中也发生过这种情况 有时 Eclipse CDT 在解析某些文件时会卡住 百分比指标不前进 并按任务的取消按钮使其 取消请求 但它仍然卡在这种状态 因此 我不仅不能在我的项目
  • 确定源代码行和函数引用文件 - Firebug 如何做到这一点?

    简单的介绍 我试图获取函数定义的行号 以仅解析公共内容的文档注释 我已经到了可以找到函数名称的地步 如果我愿意的话 我可以执行该函数 但我似乎无法找到任何方法来提取行号信息 注意 这纯粹是出于文档目的 因此不需要跨浏览器 我知道 fireb
  • MS SQL 2012:在 SQL 中,如果列包含 0,则将列移至左侧

    如果第一列 左侧列 具有 0 值并且应在右侧列中添加 NULL 我需要将数据 列 移至左侧 一旦在任何列中发现非零值 则后面列中的 0 值应保持原样 输入数据 cust id month1 month2 month3 month4 mont
  • 如何使用 Jackson 将地图序列化为列表

    如何将 Map 属性序列化为 Map 值的列表 我已经能够使用进行其他简单的转换 JsonSerialize using getter 上的注释 然而 我不确定是否存在适合我想做的事情的人 我们需要类似的东西 在我们的例子中我们使用了定制的
  • MongoDB:按现有字段排序,然后按字母顺序排序

    在我的数据库中 我有一个字段name 在某些记录中 它是一个空字符串 而在其他记录中 它包含一个名称 在我的查询中 我目前正在做 db users find sort name 1 但是 这首先返回名称字段为空的结果 然后按字母顺序返回结果
  • 在哪里可以找到将正则表达式应用于输出的 Java Servlet 过滤器? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我希望有人已经写过这个 一
  • 在 VS 2010 中禁用 VB.NET 10 功能

    有没有办法在 VS 2010 中禁用 Visual Basic 10 语言功能 我们的开发团队已转移到 Visual Studio 2010 但我们仍然必须保持与 Visual Studio 2008 的向后兼容性 有没有办法禁用新的语言功
  • ActiveRecord::AssociationTypeMismatch:用户预期,得到 Fixnum

    我不明白为什么会出现以下错误 ActiveRecord AssociationTypeMismatch User 29943560 expected got Fixnum 当我在 Rails 控制台中执行此操作时 game Game cre
  • UTF-8 特殊字符不显示

    我试图找出为什么像这样的字符 显示像空盒子 它们是 unicode 字符 字符集是 utf 8 这可能是一个没有字形的字体问题吗 有任何想法吗 详细信息 Html页面 我使用firefox 16 0 1 Windows 7 像这篇文章中的页
  • 如何在Visual Studio中编译C++文件?

    我是 Visual Studio 新手 不知道如何编译 cpp 文件 我只制作了一个 cpp 文件 ctr n gt Visual C gt C 文件 并尝试编译它 但是在通常有编译按钮的地方 比如 c 有一个奇怪的 附加 按钮 我不明白发
  • Angular-app、(ui-)router 中解析器的身份验证和顺序

    这个问题指的是角度应用程序项目及其对用户进行身份验证的方式 原始实现通过在路由器上使用解析子句来保护对某些 url 的访问 这看起来像 routeProvider when projects templateUrl projects pro
  • VBA:将文本转换为数字

    我有一列数字 无论出于何种原因 它们都被格式化为文本 这使我无法使用算术函数 例如小计函数 将这些 文本数字 转换为真实数字的最佳方法是什么 Here is a screenshot of the specific issue 我已经尝试过
  • 从加载Picasso的ImageView获取Bitmap

    我有一个加载图像的方法 如果图像之前尚未加载 它将在服务器上查找它 然后它将其存储在应用程序文件系统中 如果它位于文件系统中 则会加载该图像 因为这比从服务器提取图像要快得多 如果您之前加载过图像而没有关闭应用程序 它将存储在静态字典中 以
  • VC++ 中 invalidate、update 方法的作用是什么

    我对 C 中的窗口函数有一点疑问 到底是什么 invalidate 功能做什么 当我们需要调用它时 它会发送什么消息 还有什么是 update 功能 是 invalidaterect 作品类似于 invalidate 功能 Thanks C
  • 如何获取某个目录的父文件夹的路径?

    当我有这个目录路径时 C Program Files x86 Embarcadero 我正在寻找的函数应该返回 C Program Files x86 我已经尝试过这段代码 但它仅适用于文件 不适用于目录 function GetParen
  • 使用 Beautiful Soup 从“img”标签中提取“src”属性

    考虑 div class someClass a href href img alt some src some a div 我想提取来源 即src 来自图像的属性 即img 使用 Beautiful Soup 标签 我使用 Beautif