xpath获取标签对本身含内容, 获取html内容
通常使用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获取标签对本身含内容, 获取html内容的更多相关文章
- JS:获取标签的6个方法+获取html+获取body
		JS 获取标签的方法 通过class: document.getElementsByClassName('class名');返回数组通过name: document.getElementsByName ... 
- 使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析
		使用所见即所得文本编辑器编辑文本存入数据库后通过ajax获取服务器json_encode的数据到前台,文本内容上边的html标签不解析 因为我在前台使用了jquery的text()方法,而不是html ... 
- jquery获取标签内容,编辑内容
		一.获取页面元素 三种方式获取页面中元素的内容. input标签使用:.val()获取 标签下的html及文本内容:.html() 仅获取标签下的纯文本内容:.text() <head> ... 
- javascript  获取标签内的内容
		js 获取标签内的内容 参考:这篇博客给了我很大的启发. http://www.cnblogs.com/breakdown/archive/2012/10/09/2716221.html 我遇到的问题 ... 
- JS---DOM---设置和获取---标签内容和文本内容
		设置和获取---标签内容和文本内容 总结---设置: 使用innerText主要是设置文本的, 设置标签内容, 是没有标签的效果的 innerHTML是可以设置文本内容 innerHTML主要的作 ... 
- JS获取标签内容的方法
		JS获取标签内容的方法 测试代码 <!DOCTYPE html> <html lang="en"> <head> <meta charse ... 
- 爬虫神器XPath,程序员带你免费获取周星驰等明星热门电影
		本教程由"做全栈攻城狮"原创首发,本人大学生一枚平时还需要上课,但尽量每日更新文章教程.一方面把我所习得的知识分享出来,希望能对初学者有所帮助.另一方面总结自己所学,以备以后查看. ... 
- 利用scrapy获取抽屉新热榜的标题和内容以及新闻地址保存到本地
		1.安装scrapy pip3 install scrapy 2.打开terminal,cd 到想要创建程序的目录下 3.创建一个scrapy项目 在终端输入:scrapy startproject ... 
- 6、前端--DOM操作(查找标签、节点操作、获取值操作、class操作、样式操作、绑定事件、内置参数this)
		DOM操作之查找标签 前缀关键字>>>:document # 基本查找(核心) document.getElementById 根据ID获取一个标签 document.getElem ... 
随机推荐
- JVM调优YoungGC
			先上代码: 主函数: public class GCDemo { public static void main(String[] args) throws InterruptedEx ... 
- iOS应用卡顿分析
			1.屏幕显示图像的原理 显示器按照从上到下的方式,一行行扫描,扫描完成后显示器就呈现一帧画面,随后电子枪回到初始位置继续下一次扫描.为了把显示器的显示过程和系统的视频控制器进行同步,显示器(或者其他硬 ... 
- redis-5.0.5.tar.gz 安装
			参考5.0安装,地址:https://my.oschina.net/u/3367404/blog/2979102 前言 安装Redis需要知道自己需要哪个版本,有针对性的安装. 比如如果需要redis ... 
- 1+X证书Web前端开发规范手册
			一.规范目的 1.1 概述 为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本 ... 
- FaaS(函数即服务) + BaaS(后台即服务)
			作者 | 黄子毅(紫益) 阿里前端技术专家 导读:前端开发者是最早享受到 “Serverless” 好处的群体,因为浏览器就是一个开箱即用.甚至无需为计算付费的环境!Serverless 把前端开发体 ... 
- Visual Studio 语法高亮插件推荐
			编辑器 GItHub:https://github.com/Art-Stea1th/Enhanced-Syntax-Highlighting Visual Studio Marketplace:htt ... 
- Java生鲜电商平台-物流配送的设计与架构
			Java生鲜电商平台-物流配送的设计与架构 说明:由于Java开源生鲜电商平台是属于自建物流系统,也就是买家下的单,需要公司派物流团队进行派送. 业务需求中买家的下单时间控制在: ... 
- SpringCloud框架
			最近一直在针对SpringCloud框架做项目,从中踩了不少的坑,也渐渐梳理出了一些内容,由于SpringCloud作为一个全家桶,其中东西太多,所以这时候就要有所取舍,这里就想把自己比较常用组件及架 ... 
- Flask--数据库连接池
			目录 数据库连接池 pymsql链接数据库 数据库连接池版 数据库连接池 pymsql链接数据库 import pymysql conn = pymysql.connect(host='127.0.0 ... 
- tkinter为多个窗口设置相同的icon报错
			import threading import tkinter from PIL import Image, ImageTk def show_window(): window = tkinter.T ... 
