昨天开始装装插件,找找博客,看看知乎,开始我的python的自学之路。惭愧,我算是一个只有三分钟热度的人,挖个坑督促一下自己。希望能坚持把坑填上。
先来盘点一下昨天完成的事,以及接下来的计划。
看完两篇知乎文章并实现和理解了其中的简单实例
Python爬虫(1):Requests <https://zhuanlan.zhihu.com/p/26303723>
Python爬虫(2):XPath语法 <https://zhuanlan.zhihu.com/p/26303926>
W3school上的XPath教程 <http://www.w3school.com.cn/xpath/xpath_syntax.asp>
简单整理了一下笔记
网页爬虫的整个思路方法:
爬取整个网页=获取网页的源代码
爬取下来的网页再通过文本解析提取,找到需要的信息,可以是图片或者文字
#入门一个HTTP客户端库:Requests,用来请求网址,得到一些响应内容
#lxml库和XPath(XML文档中查找信息的语言)语法来完成信息的提取
###XPath节点
节点(Node):在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档(根)节点
基本值(原子值,Atomic value):无父或无子的节点
项目(Item):基本值或节点
###XPath语法
选取节点:其采用路径表达式选取XML文档中的节点或节点集。节点是通过沿着路径(path)或者步(steps)选取的
表达式
描述
路径表达式
结果
nodename
选取此节点的所有子节点
bookstore
选取bookstore元素的所有子节点
/
从根节点选取
/bookstore
选取根元素bookstore
//
从匹配选择的当前节点选择文档中的节点,而不考虑他们的位置
bookstore/book
选取属于bookstore的子元素的所有book元素
.
选取当前节点
//book
选取所有book子元素,而不管它们在文档中的位置
..
选取当前节点的父节点
bookstore//book
选择属于bookstore元素的后代的所有 book 元素,而不管它们位于 bookstore 之下的什么位置
@
选择属性
//@lang
选取名为 lang 的所有属性
谓语(Predicates)被嵌在方括号中,用来查找某个特定的节点或者包含某个指定的值的节点
选取未知节点:*匹配任何元素节点; @*匹配任何属性节点; node()匹配任何类型的节点
选取若干路径:通过在路径表达式中使用“|”运算符,可以选取若干个路径
###XPath Axes(轴)
轴定义相对于当前节点的节点集
ancestor\ancestor-or-self\attribute\child\descendant(后代)\descendant-or-self\
following\namespace\parent\precending\precending-sibling\self
位置路径表达式:绝对路径起始于/,相对路径不会
步(step):轴名称::节点测试[谓语]
child::*
选取当前节点的所有子元素
child::node()
选取当前节点的所有子节点
child::*/child::price
选取当前节点的所有 price 孙节点
###XPath运算符
XPath 表达式可返回节点集、字符串、逻辑值以及数字
###XPath函数
计划
主要是按照了知乎上的一个python爬虫学习计划 <https://zhuanlan.zhihu.com/p/29061289>
## 计划(穿插着看一些博客)
2018-7-3修改一下计划
### Day1-20《笨方法学Python》每天3-5个习题,20天完成全书(7.13之前完成)
### Day20-40《用python写网络爬虫》每天10页,20天完成全书(7.31之前完成)
### Day40-50 单个帖子的目标信息爬取(花3-5天时间巩固、总结)
(下面的暂时放着不继续)
### Day50-70《精通python网络爬虫》每天20页,20天完成全书
### Day70-100整站的目标信息爬取,实现目标。
穿插着学习如何学习Python爬虫[入门篇]? <https://zhuanlan.zhihu.com/p/21479334>中贴出来的博客文章
2018-7-13修改计划
开始看python爬虫这本书,发现上面提到的用于特定的爬虫的网站都打不开,所以可能要弃书了。
那么接下来
想继续训练一下python编程能力,把下面的这个回答中的33个例子自己动手跑一遍理解一下。
Python 的练手项目有哪些值得推荐? <https://www.zhihu.com/question/29372574/answer/88744491>
然后把如何学习Python爬虫[入门篇]? <https://zhuanlan.zhihu.com/p/21479334>中贴出来的博客文章看完
这个暑假差不多就过去了。
热门工具 换一换