我正在try 从Slideshare演示文稿中提取第一个图像URL,这样我就可以遍历页码并抓取整个幻灯片放映.2048之前的-1是页码,因此我只需拆分字符串即可遍历页面.

事实证明,检索图像URL是有问题的.

以下是我的代码:

import requests
from bs4 import BeautifulSoup

a = requests.get("https://www.slideshare.net/JSYashas/netflix-73262280")

soup = BeautifulSoup(a.content, 'lxml')

soup2 = soup.find_all()

这是我试图提取的图像URL:

https://image.slidesharecdn.com/netflix-170317184749/75/netflix-1-2048.jpg?cb=1665800047

(这些都是我从互联网上拉的例子,而不是我试图使用的实际文件.

我想不通的是,为了返回这个图像URL,要在find_all()中使用什么.

理想情况下,我想要的解决方案是查找"-1-2048.jpg"的第一个匹配项,然后使用它来提取完整的字符串,但我无法让它工作.

我喜欢这种方法,因为它对不同的文件路径和html struct 很健壮,我怀疑不同的文件路径和html struct 在幻灯片共享中并不是统一的.

如有任何帮助,我们不胜感激.

推荐答案

与其使用find_all,我建议直接搜索picture.

试试这个:

a = requests.get("https://www.slideshare.net/JSYashas/netflix-73262280")
soup = BeautifulSoup(a.content, 'lxml')
pic = soup.find('picture', attrs={'data-testid':'slide-image-picture'}).find("source")["srcset"]
link = pic.split(" ")[4]
print(link)

输出

https://image.slidesharecdn.com/netflix-170317184749/75/netflix-1-2048.jpg?cb=1665800047

我也try 过在其他幻灯片上使用它,它在那里也可以检索到招聘人员的图像.

Python相关问答推荐

脚注在Python中使用regex导致错误匹配

如何使用函数正确索引收件箱?

PyTorch卷积自动编码器,输出维度与输入不同

使用Curses for Python保存和恢复终端窗口内容

Python中的Pool.starmap异常处理

从包含数字和单词的文件中读取和获取数据集

Python:在类对象内的字典中更改所有键的索引,而不是仅更改一个键

@Property方法上的inspect.getmembers出现意外行为,引发异常

滚动和,句号来自Pandas列

如何使用Python将工作表从一个Excel工作簿复制粘贴到另一个工作簿?

通过Selenium从页面获取所有H2元素

运行终端命令时出现问题:pip start anonymous"

如何在python xsModel库中定义一个可选[December]字段,以产生受约束的SON模式

我如何使法国在 map 中完全透明的代码?

关于Python异步编程的问题和使用await/await def关键字

为什么numpy. vectorize调用vectorized函数的次数比vector中的元素要多?

人口全部乱序 - Python—Matplotlib—映射

干燥化与列姆化的比较

如何在一组行中找到循环?

Python—在嵌套列表中添加相同索引的元素,然后计算平均值