python lxml.etree.Element.text_content 中文报错

fysy0000 2011-11-18 02:58:05
<html>
<body>
<table id = "ta_1" border = "2">
<tr align = "center">
<td><img src="zhengchuang">"张三#279"</td>
<td>lisi</td>
</tr>
<tr align = "center">
<td>13:19 2011-11-17#279</td>
<td>baidu</td>
</tr>
</table>
<body>
</html>
我要解析上面HTML table每一行(tr align = "center")的第一列Text节点信息,但是用方法text_content()对于中文的文字节点会报错,英文的支持完好。请问该怎么处理

import lxml
import lxml.html as HTML
from lxml import etree

fd = open("E:\\test.html","r")
dom = HTML.document_fromstring(fd.read())
trNodesList=dom.xpath("//table[@id='ta_1']//tr")
count =0
for item in trNodesList:
if(item.get("align") == "center"):
for it in item.iter():
if(it.tag =="td"):
print it.text_content()#error place
break
...全文
880 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
fysy0000 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 thundor 的回复:]
用NotePad++将输入文件html改成utf-8编码保存后即可
[/Quote]
这个是我本地测试的,实际是用作网页解析的,你的方法可能行不通
fysy0000 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 angel_su 的回复:]
idle在报错,你在纯cmd下试试吧。还有你用的lxml是第三方的吧,没特殊原因用内建的xml模块,这样别人好帮你...
[/Quote]
内建的xml.dom.mindom的解析XML或者HTML要求,规范的XML或者HTML,这样解析网页就显得弱了点
angel_su 2011-11-18
  • 打赏
  • 举报
回复
idle在报错,你在纯cmd下试试吧。还有你用的lxml是第三方的吧,没特殊原因用内建的xml模块,这样别人好帮你...
zengna_com 2011-11-18
  • 打赏
  • 举报
回复
用NotePad++将输入文件html改成utf-8编码保存后即可
fysy0000 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 thundor 的回复:]
Python code
#coding:gbk
[/Quote]
还是错误
Traceback (most recent call last):
File "D:/Python27/changest.pyw", line 17, in <module>
print item.text_content()
File "D:\Python27\lib\idlelib\rpc.py", line 595, in __call__
value = self.sockio.remotecall(self.oid, self.name, args, kwargs)
File "D:\Python27\lib\idlelib\rpc.py", line 210, in remotecall
seq = self.asynccall(oid, methodname, args, kwargs)
File "D:\Python27\lib\idlelib\rpc.py", line 225, in asynccall
self.putmessage((seq, request))
File "D:\Python27\lib\idlelib\rpc.py", line 324, in putmessage
s = pickle.dumps(message)
File "D:\Python27\lib\copy_reg.py", line 70, in _reduce_ex
raise TypeError, "can't pickle %s objects" % base.__name__
TypeError: can't pickle _ElementUnicodeResult objects
zengna_com 2011-11-18
  • 打赏
  • 举报
回复
#coding:gbk
内容概要:本文档系统性地涵盖了电力电子与能源系统领域的核心技术,重点聚焦直流-直流和交流-直流转换器的并网技术,深入探讨并网逆变器、双向电池充电器及LCL滤波器的设计原理与仿真方法,并基于Simulink平台实现并网电池系统的建模与动态分析。内容延伸至三相逆变器、软开关技术、微电网控制策略、储能系统集成以及多种电力变换拓扑结构的仿真研究,突出其在新能源并网、电能质量提升和系统稳定性保障中的工程应用价值。文档还整合了永磁同步电机控制、风光储协同优化调度、需求响应机制、碳交易背景下的低碳经济运行等前沿课题,并提供了大量Matlab/Simulink仿真模型与Python实现代码,涵盖顶刊复现、硕士论文复现及创新未发表研究成果,具有较强的综合性、实践性与科研指导意义。; 适合人群:电气工程、自动化、能源系统及相关专业的高年级本科生、研究生、科研人员,以及从事电力电子变换、新能源并网、微电网控制与储能系统开发的工程技术人员。; 使用场景及目标:①支撑高校科研项目中关于新能源并网、储能系统控制、电能质量管理等方向的技术研究与仿真验证;②辅助完成电力电子课程设计、毕业设计或实际工程项目中的系统建模、控制器设计与稳定性分析;③为撰写高水平学术论文、复现国际顶刊成果提供可运行的模型参考与算法实现支持;④助力研究人员掌握从理论建模到仿真实践的全流程科研能力。; 阅读建议:建议读者结合Matlab/Simulink与Python环境动手实践,优先学习并网逆变器控制、LCL滤波器设计、软开关技术与微电网能量管理等核心模块,重点关注系统稳定性分析与控制策略优化部分;同时可访问文中提供的百度网盘链接获取完整仿真模型与代码资源,结合“荔枝科研社”公众号资料体系进行系统性学习,以提升科研效率与技术创新能力。

37,740

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧