python爬虫教程实例如何运行步骤python爬虫教程下载
下载地址 https://share.weiyun.com/0UhC6msn
资料目录 30个小时搞定Python网络爬虫视频课程(全套详细版) Python网络爬虫工程师系列培训视频课程(65集全) 廖雪峰商业爬虫(含课件、案例和练习) 零基础Python实战 四周实现爬虫网站 《Python 3网络爬虫开发实战 》崔庆才著.pdf 《Python网络爬虫从入门到实践》 庄培杰编著.pdf Python 3爬虫、数据清洗与可视化实战_零一等编著.pdf Python3网络爬虫数据采集 陶俊杰 翻译.pdf Python爬虫开发与项目实战 范传辉 编著.pdf Python爬虫大数据采集与挖掘-微课视频版 曹剑平 编著.pdf python网络爬虫从入门到实践 唐松等.pdf 网络爬虫-Python和数据分析 王澎著.pdf 用Python写网络爬虫 李斌 翻译.pdf 自己动手写网络爬虫 罗刚等 编著.pdf Python项目案例开发从入门到实战:爬虫、游戏和机器学习 by 郑秋生 夏敏捷 举例 XPath 语法速成 XPath(XML Path Language,XML 路径语言),用于在 XML 文档中查找信息。它既适用于 XML 文档的搜索,又适用于 HTML。其核心是按照规则,通过编写路径选择表达式来筛选节点。 下面简单介绍 XPath 的语法,如果想了解更多的规则,可访问 http://www.w3school.com.cn/xpath/。 1. 绝对路径和相对路径 绝对路径:用/表示从根节点开始选取。 相对路径:用//表示选择任意位置的节点,而不考虑它们的位置。 另外,可以使用*(通配符)来表示未知的元素。除此之外,还有两个选取节点的标记(.和..),前者用于选取当前节点,后者用于选取当前节点的父节点。 2. 选择分支定位 比如存在多个元素,想唯一定位,可以使用[]来选择分支,分支的下标从 1 开始,相关的规则如下。 /tr/td[1]:取第一个td /tr/td[last()]:取最后一个td /tr/td[last()-1]:取倒数第二个td /tr/td[position()<3]:取第一个和第二个td /tr/td[@class]:选取拥有class属性的td /tr/td[@class='xxx']:选取拥有class属性为xxx的td /tr/td[count>10]:选取 price 元素的值大于10的td 3. 选择属性 还可以通过多个属性定位,比如可以这样写: /tr/td[@class='xxx'][@value='yyy']或者/tr/td[@class='xxx' and @value='yyy'] 4. 常用函数 除了 last()、position(),还有以下常用函数。 contains(string1,string2):如果前后匹配则返回 True;否则返回 False。 text():获取元素的文本内容。 starts-with():从起始位置匹配字符串。 更多的函数可以访问 http://www.w3school.com.cn/xpath/xpath_functions.asp 自行查阅。 5. 轴 当上面的操作都不能定位时,可以考虑根据元素的父节点或兄弟节点来定位,这时就会用到 XPath 轴,利用轴可定位某个相对于当前节点的节点集,语法为轴名称::标签名,可选参数如表 2.4 所示。 表 2.4 可选参数表 轴 名 称 作 用 ancestor 选取当前节点的所有先辈(父、祖父等) ancestor-or-self 选取当前节点的所有先辈(父、祖父等)及当前节点本身 attribute 选取当前节点的所有属性 child 选取当前节点的所有子元素 descendant 选取当前节点的所有后代元素(子、孙等) descendant-or-self 选取当前节点的所有后代元素(子、孙等)及当前节点本身 following 选取文档中当前节点的结束标签之后的所有节点 following-sibling 选取当前节点之后的所有兄弟节点 namespace 选取当前节点的所有命名空间节点 parent 选取当前节点的父节点 preceding 选取文档中当前节点的开始标签之前的所有节点 preceding-sibling 选取当前节点之前的所有同级节点 self 选取当前节点 接下来我们通过一个实战案例来巩固 lxml 库的用法。
|