zoukankan
html css js c++ java
爬虫基础总结4
正则表达式
P = re.compile(regex, re.S)
P.findall("str")
P.sub("_", "str")
re.findall(regex, "str")
re.sub(regex,"_", str)
原始字符串r 在正则中忽略转义带来的影响
re.findall("<p>(.*?)</p>", sre)
xpath
获取文本
A/text()
A//text()
A[text()="下一页"]
@符号
获取属性 A/@href
根据属性定位 A[@class='a']
//
放在xpath最前面表示选择当前页面html页面任意元素
A//text()获取A下的任意元素的文本
//a[1] 第一个
//a[last()] 最后一个
//a[position()<3] 取前两个
//a[1]|//a[3] |表示或的意思
lxml
1.from lxml import stree
2.element=stree.HTML(bytes/str)
返回element对象,具有xpath
3.etree.tostring(element) 返回element中的字符串格式
element.xpath
1.先分组
2.分组提取数据
li.xpath("./a/text()")
li.xpath("./a/@href")
查看全文
相关阅读:
[C#.NET 拾遗补漏]:迭代器和列举器
[C#.NET 拾遗补漏]:操作符的几个骚操作
[C#.NET 拾遗补漏]:理解 volatile 关键字
C#-表达式目录树
数据源管理 | 关系型分库分表,列式库分布式计算
Java中的经典算法之冒泡排序(Bubble Sort)
MySQL数据库优化的八种方式(经典必看)
mysql插入数据后返回自增ID的方法(AUTO_INCREMENT)
MySQL 插入数据后返回自增id的方法
查询数据库中的重复数据——MySQL数据库
原文地址:https://www.cnblogs.com/wsilj/p/12736407.html
最新文章
记录数据库被攻击.md
Access denied for user '电脑用户名'@'localhost'
PowerDesigner16安装和使用
【dependencyManagement版本管理】dependencies.dependency.version is missing
Visual Studio插件CodeRush 2021第一个重大版本发布
时钟网页源码
关于蔬菜中的营养是否会因煮的太熟而流失问题的回答
网址缩短自动化
Nginx反向代理关键配置
艾孜尔江关于《胡同的记忆》手游联网模块给出的简单建议
热门文章
C#中的深拷贝与浅拷贝
C#文件操作大全
C# Stream篇(七) -- NetworkStream
C# Stream篇(六) -- BufferedStream
C# Stream篇(五) -- MemoryStream
C# Stream篇(四) -- FileStream
C# Stream篇(三) -- TextWriter 和 StreamWriter
C# Stream篇(二) -- TextReader 和StreamReader
C# Stream篇(—) -- Stream基类
如何实现 axios 的自定义适配器 adapter
Copyright © 2011-2022 走看看