python爬虫parsel-css选择器的具体用法

 更新时间:2023年06月28日 10:14:00   作者:就四个字,熟能生巧。  
本文主要介绍了python爬虫parsel-css选择器的具体用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

parsel 比 lxml 功能强大,它内部不光集成有xpath语法,也集成了css和re语法,相比而言,css与re通用性更强,它俩的性能完全不输xpath,特别是re,速度更快,难度也高!

引入

import parsel  
import requests

语法使用

url = 'http://www.baidu.com'
response = requests.get(url)
selector = parsel.Selector(response.text)

选择所有元素

selector.css('*')

1、选择article元素

html = selector.css('article')
# get(), getall() , extract_first(), extract() 都可以

2、选择id为container的元素

selector.css('#container')

3、选择所有class包含container的元素

selector.css('.container')

4、选取所有div下所有a元素

selector.css('div a')

5、提取标签title列表

title1 = selector.css('title').extract()
title2 = selector.css('title').extract_first()

6、提取标签p里的文本内容

text = selector.css('p::text').extract()

7、提取标签div里的所有文本内容

data = selector.css('div.post-content *::text').extract()

8、提取标签里的URL:标签名::attr(属性名)

url = selector.css('div.post-content img::attr(src)').extract()

9、选取所有拥有title属性的a元素

a = selector.css('a[title]').getall()

拓展语法

选取ul后面的第一个p元素

selector.css('ul + p')

选取与ul相邻的所有p元素

selector.css('ul ~ p')

选取下面第二个标签,如果是a的话则选取,不是则不取

selector.css('a:nth-child(2)')

选取第偶数个a元素

selector.css('a:nth-child(2n)')

选取第奇数个a元素

selector.css('a:nth-child(2n+1)') 

选取class为multi-chosen的li的所有a元素

selector.css('li.multi-chosen > a') 

选取所有href属性为www.baidu.com的a元素

selector.css('a[href=”www.baidu.com”]')

选取所有href属性值中包含www.baidu.com的a元素

a[href*=”www.baidu.com”]

选取所有href属性值中以http开头的a元素

a[href^=”http”] 

选取所有id为非content-container 的div

div:not(#content-container)

到此这篇关于python爬虫parsel-css选择器的具体用法的文章就介绍到这了,更多相关python parsel-css选择器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 用Python创建简易网站图文教程

    用Python创建简易网站图文教程

    今天给大家带来的是关于Python的相关知识,文章围绕着用Python创建简易网站展开,文中有非常详细的介绍及图文示例,需要的朋友可以参考下
    2021-06-06
  • Pyqt5如何让QMessageBox按钮显示中文示例代码

    Pyqt5如何让QMessageBox按钮显示中文示例代码

    这篇文章主要给大家介绍了关于Pyqt5如何让QMessageBox按钮显示中文的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Pyqt5具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • 深入理解Python装饰器

    深入理解Python装饰器

    装饰器(decorator)是一种高级Python语法。装饰器可以对一个函数、方法或者类进行加工。这篇文章主要介绍了深入理解Python装饰器的相关资料,需要的朋友可以参考下
    2016-07-07
  • Python基本结构之判断语句的用法详解

    Python基本结构之判断语句的用法详解

    在程序的设计当中,代码并不是逐步按照顺序进行执行的,在运行到某一行代码当中,需要停下进行判断接下来将要运行到那一个分支代码,这种判断就代表的是分支结构。分支结构是可以使用 if 语句来进行判断的,而我们本篇博客讲的也是 if 语句,需要的可以了解一下
    2022-07-07
  • python中sympy库求常微分方程的用法

    python中sympy库求常微分方程的用法

    这篇文章主要介绍了python中sympy库求常微分方程的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Flask 使用类组织配置详情

    Flask 使用类组织配置详情

    这篇文章主要介绍了Flask使用类组织配置,在实际的项目中,我们一般都会建立三个环境:开发、测试和生产环境,这三种环境会使用不同的配置组合,为了能方便地切换配置,我们可以为不同的环境创建不同的配置文件,下面来看详细内容,需要的朋友可以参考一下
    2021-11-11
  • python 使用uiautomator2连接手机设备的实现

    python 使用uiautomator2连接手机设备的实现

    这篇文章主要介绍了python 使用uiautomator2连接手机设备的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python天气语音播报小助手

    Python天气语音播报小助手

    马上就要迎来国庆小长假了,激不激动,兴不兴奋!那今年国庆:天气怎么样?能不能出门逛街?能不能出去旅游?旅游出门就要挑个好的天气!下雨天哪儿哪儿都不舒服。今天小编带大家写一款Python天气语音播报小助手
    2021-09-09
  • Python获取指定日期是"星期几"的6种方法

    Python获取指定日期是"星期几"的6种方法

    在Python进行数据分析时,按照日期进行分组汇总也是被需要的,比如会找到销量的周期性规律。本文将以2022-02-22为例,演示Python获取指定日期是“星期几”的6种方法,需要的可以参考一下
    2022-03-03
  • python 实现一个图形界面的汇率计算器

    python 实现一个图形界面的汇率计算器

    这篇文章主要介绍了python 实现一个图形界面的汇率计算器,帮助大家更好的理解和学习如何制作gui程序,感兴趣的朋友可以了解下
    2020-11-11

最新评论