0
点赞
收藏
分享

微信扫一扫

网络爬虫

村里搬砖的月野兔 2022-04-13 阅读 69
爬虫

 

1、from lxml import etree 下载架包

将变量读取为html对象,自动添加......

html=etree.HTML(wb_data)

2、解析数据,/:根节点

data1=(html.xpath('/html'))

for i in data1:

print(i)

3、//:子孙节点,后面的节点可以在任意位置

4、写具体路径('/html/body/div/ul')

5、循环某个属性('('/html/body/@class')')

6、代表当前节点...代表父节点

data5=html.xpath('/html/body/div/ul/li/a')

for i in data5:

a=i.xpath('./@href')

print(a)

7、读取某一个节点

data6=html.xpath('/html/body/div/ul')

for i in data6:

li_1=i.xpath('./li[1]')

print(li_1)

li_last=i.xpath('./li[last()]')

print(li_last)

8、带有某属性的标签

data7=html.xpath('//ul/li/a[@href="link2.html"]')

for i in data7:

print(i.text)

9、*位置节点

data8=html.xpath('//ul/li/*')

for i in data8:

if hasattr(i,'text'):

print(i)

else:

print(i)

 

10、将字符串解析为html对象,补全html,body

html=etree.HTML(wb_data)

将a标签的文本直接获取,text()

data2=html.xpath('//li/a/text()')

print(data2)

 

11、解析html文件

parser=etree.HTMLParser(encoding='utf-8')

html_file=etree.parse('ddd.html',parser=parser)

 

12、匹配任意节点

data3=html_file.xpath('//*')

for i in data3:

if hasattr(i,'text'):

print(i.text)

 

13、解析匹配带属性的a标签的text文本

data4=html_file.xpath('//li/a[@href]/text()')

print(data4)

 

14、解析属性的值

data5=html_file.xpath('//li/a/@href')

print(data5)

 

15、谓语

data6=html_file.xpath('//li[last()]/a/text()')

print(data6)

举报

相关推荐

0 条评论