首页 > 其他 > 详细

xpath获取标签对本身含内容

时间:2019-06-16 18:32:24      阅读:201      评论:0      收藏:0      [点我收藏+]

通常使用xpath我们直接定位到标签后, 使用/text() 或 //text()来获取标签对之间的文本值,

但特殊情况下我们也需要获取标签本身含文本值, 操作如下:

文件为html, 标签对结构如下:

<table id=‘1h‘> 
  <tr>
     <td>Row value 1</td>
    <td>Row value 2</td>
  </tr>
</table>

代码如下:
from lxml import etree
import requests
from lxml.html import fromstring, tostring
url = "https://www.baidu.com/"

ret = requests.get(url, headers=headers)
code = ret.apparent_encoding # 获取url对应的编码格式
ret.encoding = code
html = ret.text # html文件内容即示例中的标签

tree = etree.HTML(html)
result = tree.xpath(‘//*[@id="lh"]‘)[0]

print(‘看结果这里‘, tostring(result, encoding=code).decode(code))

注: tostring()方法即可把通过xpath定位到的标签(含该标签)及其下的所有标签输出,
  切记使用decode()方法来进行解码


 

xpath获取标签对本身含内容

原文:https://www.cnblogs.com/quzq/p/11032413.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!