xpath的基本使用:
放上别人的博客:https://mp.weixin.qq.com/s?src=11×tamp=1628086639&ver=3232&signature=2Is5X-48A*YLAft3VKnvZFRhVEJ8Py8xYo*1w5-daGWdwybn0EuT9sUQQpcohZHy*C9BE4x2E6br1qdpS1u8Hgh1aDmbMv3WjegDJvUKaSZnQp5SadQPfn*lzOGUCC2M&new=1
原创:liupu
lxml解析html代码和文件:
两者基本上都是结合使用,首先用etree将网页解析为一个对象,才可以用xpath。
etree.tostring方法解析为一个bytes,再解码成为一个str,这两个可以验证。
import requests from lxml import etree #解析html字符串,用etree.HTML html = etree.HTML(text) print(html) # #<Element html at 0x26573d09a80> ,结果是一个对象 #我们必须将其解码为html格式才能使用xpath print(type(etree.tostring(html))) #bytes print(type(etree.tostring(html,encoding='utf-8').decode('utf-8'))) #str 经过解码返回一个str print(etree.tostring(html,encoding='utf-8').decode('utf-8')) #解析html文件,用etree.parse html = etree.parse('文件名') print(etree.tostring(html,encoding='utf-8').decode('utf-8')) #这个函数XML解析器,若遇到一些不规范的html,会解析错误,这时候就需要自己定义一个解析: parser = etree.HTMLParser('utf-8') html = etree.parse('文件名',parser=parser) print(etree.tostring(html,encoding='utf-8').decode('utf-8'))