开发者社区 问答 正文

scrapy 使用 CSS 或者 xpath 提取没有 HTML 标签包括的文本

scrapy 使用 CSS 或者 xpath 提取没有 HTML 标签包括的文本

如何使用 css 或者 xpath 选择器提取到 1-1 Java简介 (05:49) 的内容?#

<a href="/video/1430" class="J-media-item">
     <i class="imv2-play_circle type"></i>
    1-1 Java简介 (05:49)
     <button class="r moco-btn moco-btn-red preview-btn">开始学习</button>
</a>

目前的解决方法是使用 beautifulsoup4, 除了这里的数据其他数据都提取到了,不想为了这个问题再引入 bs4, 请教下 css 或者 xpath 如何实现?

展开
收起
问问小秘 2020-01-02 11:53:52 964 分享 版权
来自: Python中文社区
1 条回答
写回答
取消 提交回答
  • from lxml import etree
    wb_data = '''
    <a href="/video/1430" class="J-media-item">
         <i class="imv2-play_circle type"></i>
        1-1 Java简介 (05:49)
         <button class="r moco-btn moco-btn-red preview-btn">开始学习</button>
    </a>
    '''
    html = etree.HTML(wb_data)
    a_text = html.xpath('//a/text()')
    print(a_text)
    
    2020-01-02 11:54:08
    赞同 展开评论