您的位置:首页 > 理论基础 > 计算机网络

Python爬虫——web前端基础XPath、Json和HTTP

2017-10-21 18:23 555 查看
一、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:缓存页面最后修改的时间。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python web前端 爬虫