urllib下使用Xpath表达式示例

urllib下使用Xpath表达式示例

使用xpath表达式需要先将需要匹配的数据转换成tree格式,这就需要先装lxml模块。安装方法可以使用pip安装。

示例代码:

import urllib.request

from lxml import etree 

date=urllib.request.urlopen("http://www.sohu.com/").read().decode("utf-8","ignore")

treedate=etree.HTML(date) #将urllib获取的数据转换成etree结构

title=treedate.xpath("//title/text()")#使用xpath表达式获取想要的数据

if (str(type(title)))=="<class 'list'>": #了避免有些数据是迭代器之类的格式,所以判断获取的数据类型并转换为列表类型

    pass

else:

    title=[i for i in title]    #将数据通过遍历转换成列表类型

补充知识点:

>>> [i for i in range(1,10)]

[1, 2, 3, 4, 5, 6, 7, 8, 9]

 

posted @ 2018-03-25 11:32  xsan  阅读(522)  评论(0编辑  收藏  举报