所以,目前我有一些问题,试图提取一个图片网址从网页使用美丽的汤。我对靓汤没有经验,如果您能给我任何反馈,我将不胜感激。下面是我试图从中提取图片链接的HTML片段(更具体地说,源媒体标记中的数据srcset URL):
<div class="container-fluid" itemscope="" itemtype="http://schema.org/Product">
<div class="row">
<div id="js_carousel" class="col-xs-12 col-md-8">
<div id="psp-carousel" class="carousel_outer">
<div id="product-carousel" class="pdp-carousel carousel pdp-initial" style="display:block;">
<!-- Wrapper for slides -->
<div class="carousel-inner" id="carousel-inner" role="listbox">
<img class="product-image-placeholder" itemprop="image" alt="..." src="data:image/svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 355 462'%3E %3Crect fill%3D'%23eee' width%3D'100%25' height%3D'100%25'%2F%3E%3C%2Fsvg%3E" width="355" height="462">
<picture class="item active" data-image="//s7d2.scene7.com/is/image/aeo/1162_8725_499_of" role="option" aria-selected="true" tabindex="0">
<source media="(max-width: 767px)" data-srcset="//s7d2.scene7.com/is/image/aeo/1162_8725_499_of?$pdp-main_small$" srcset="//s7d2.scene7.com/is/image/aeo/1162_8725_499_of?$pdp-main_small$">
任何时候我试着用线
my_imgs = page_soup.findAll('picture',{'class':'item active'})
我得到一个空数组。我很抱歉,如果这是一个愚蠢的问题,但任何帮助将不胜感激。在
您是否尝试过对bs4实例使用}是为老版本的靓汤设计的。阅读文档,你的旧版本的代码应该格式化为}你忘了包括代码的attrs部分来创建一个字典,beauty soup会使用它来创建一个字典,而beauty soup则使用这个字典,因为数据属性的名称不能用作关键字参数
.select()
函数?documentation表示这是在HTML汤中查找css元素的首选方法。所以在本例中使用page_soup.select('picture[class="item active"]')
,而不是.findall()
.find()
和{my_imgs = page_soup.findAll('picture', attrs ={'class':'item active'})
而不是{相关问题 更多 >
编程相关推荐