昨天开始装装插件,找找博客,看看知乎,开始我的python的自学之路。惭愧,我算是一个只有三分钟热度的人,挖个坑督促一下自己。希望能坚持把坑填上。
先来盘点一下昨天完成的事,以及接下来的计划。
看完两篇知乎文章并实现和理解了其中的简单实例
Python爬虫(1):Requests
Python爬虫(2):XPath语法
W3school上的XPath教程
简单整理了一下笔记
网页爬虫的整个思路方法:
爬取整个网页=获取网页的源代码
爬取下来的网页再通过文本解析提取,找到需要的信息,可以是图片或者文字
#入门一个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爬虫学习计划
## 计划(穿插着看一些博客)
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爬虫[入门篇]?中贴出来的博客文章
2018-7-13修改计划
开始看python爬虫这本书,发现上面提到的用于特定的爬虫的网站都打不开,所以可能要弃书了。
那么接下来
想继续训练一下python编程能力,把下面的这个回答中的33个例子自己动手跑一遍理解一下。
Python 的练手项目有哪些值得推荐?
然后把如何学习Python爬虫[入门篇]?中贴出来的博客文章看完
这个暑假差不多就过去了。
更多推荐
我的python爬虫自学之路
发布评论