繁体   English   中英

美丽的汤:从网页中提取图片网址

[英]Beautiful Soup: extracting picture url from webpage

所以目前我在尝试使用漂亮的汤从网页中提取图片URL时遇到了一些问题。 我对美味的汤很缺乏经验,并且非常感谢您对我的任何反馈。 以下是我正在尝试从中提取图片链接的HTML片段(更具体地说,是源媒体标记中的data-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'})我得到一个空数组。 如果这是一个愚蠢的问题,我道歉,但任何帮助将不胜感激。

您是否尝试过将.select()函数用于bs4实例? 文档说这是在HTML汤中查找css元素的首选方法。 所以在这种情况下使用page_soup.select('picture[class="item active"]')而不是.findall() .find().findAll()适用于Beautiful Soup的旧版本。 阅读文档似乎应该将旧版本的代码格式化为my_imgs = page_soup.findAll('picture', attrs ={'class':'item active'})而不是my_imgs = page_soup.findAll('picture',{'class':'item active'})你忘了包含代码的attrs部分来创建一个字典,然后美丽的汤使用包含名称不能用作关键字参数的数据属性

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM