Python爬虫数据提取方式——cssselector样式选择器

cssselector:和xpath是使用比较多的两种数据提取方式。cssselector是css样式选择器实现的!

scrapy爬虫框架:支持xpath/css
pyspider爬虫框架:支持PyQuery,也是通过css样式选择器实现的

HTML代码示例:

html = """
    <div id='content'>
        <ul class='list'>
            <li class='one'>哈哈</li>
            <li class='two'>Two</li>
            <li class='three'>Three</li>
            <li class='four four1 four2 four3'>Four</li>
            <div id='inner'>
                <a href='http://www.baidu.com'>百度一下</a>
                <p>第一段</p>
                <p>第2段</p>
                <p>第3段</p>
                <p>
                    第4段
                    <span id="first">大师傅大师傅!!</span>
                </p>
                <p>第5段</p>
                <p>第6段</p>
            </div>
        </ul>
    </div>
"""

安装:

pip install cssselector

首先导入:

import cssselect
from lxml.html import etree

将HTML解析成为对象:

#同xpath一样使用etree
html_obj = etree.HTML(html)

开始查找元素:

获取文本内容

span = html_obj.cssselect('.list > .four')[0]
print(span.text) 

获取属性值:

span = html_obj.cssselect('.list > .four')[0]
#help(对象):可以显示对对象的所有操作
print(help(span))
 # 获取属性:是一个字典
print(span.attrib['class'])

输出结果:four four1 four2 four3 

其他的部分参考博客(CSS选择器——cssSelector定位方式详解):点击打开链接

PyQuery查找元素:点击打开链接






猜你喜欢

转载自blog.csdn.net/qq_33472765/article/details/80843252
今日推荐