一、XPath
XPath简介:
XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航,就好比windows中文件的路径一样。XPath 含有超过 100 个内建的函数。这些函数用于字符串值、数值、日期和时间比较、节点和 QName 处理、序列处理、逻辑值等等。XPath在爬虫的应用中是分析网页中的信息。
XPath节点:
在 XPath 中,有七种类型的节点:元素、属性、文本、命名空间、处理指令、注释以及文档节点。学习python和c语言的,学过数据结构会更好的理解什么是节点。各节点的关系就是父、子、兄弟、先辈、后代。
XPath语法:
XPath 使用路径表达式来选取 XML 文档中的节点或节点集。节点是通过沿着路径 (path) 或者步 (steps) 来选取的。基本语法就是路径表达式,如下:
在节点集可以使用数组、表达式、通配符、多选符。
XPath轴:
轴就是说节点之间的关系。有下面12种。
ancestor 选取当前节点的所有先辈(父、祖父等)。
ancestor-or-self 选取当前节点的所有先辈(父、祖父等)以及当前节点本身。
attribute 选取当前节点的所有属性。
child 选取当前节点的所有子元素。
descendant 选取当前节点的所有后代元素(子、孙等)。
descendant-or-self 选取当前节点的所有后代元素(子、孙等)以及当前节点本身。
following 选取文档中当前节点的结束标签之后的所有节点。
namespace 选取当前节点的所有命名空间节点。
parent 选取当前节点的父节点。
preceding 选取文档中当前节点的开始标签之前的所有节点。
preceding-sibling 选取当前节点之前的所有同级节点。
self 选取当前节点。
XPath运算符:
普通的有+、-、*、div、=、!=、<=、>=、>、<、or、and、mod
特别注意的是“|",是计算两节点集。
二、Json
用于储存和交换文本信息。
语法和Python的字典很像。
三、HTTP
http状态码:
当浏览者访问一个网页时,浏览者的浏览器会向网页所在的服务器发出请求。浏览器接收请求后,会向浏览者回复一个状态,也就是http状态码。
HTTP状态码详解。
一共分为5类,按数字开关分类:1——信息,2——成功,3—— 重定向(需要进一步操作完成请求),4——客户端错误,5——服务端错误。
http头部信息:
http头部信息由多个头域组成,头域格式:域名:域值。
GET:请求方式
Host头哉:请求资源的Internet的主机和端口号
Use-agent:发出请求的用户信息。可用来作反爬虫
Accept:指定用户接受哪些类型的信息
Accept-Language:指定一种自然语言。
Accept-Encoding:指定可接受的编码方式
Connection:指定连接状态是连续还是关闭的
If-Modified-Since:缓存页面最后修改的时间。