[Python]HTML转换为TXT的脚本

简介:

1 from formatter import AbstractFormatter, NullWriter 

 2 from htmllib import HTMLParser 

 3 

 4 def _(str, in_encoder="gbk", out_encoder="utf8"):  5  return unicode(str, in_encoder).encode(out_encoder) 

 6 

 7 

 8 class myWriter(NullWriter): 

 9  def __init__(self): 

10  NullWriter.__init__(self) 

11  self._bodyText = [] 

12 

 13  def send_flowing_data(self, str): 

14  self._bodyText.append(str) 

15 

 16  def _get_bodyText(self): 

17  return '/n'.join(self._bodyText) 

18 

 19  bodyText = property(_get_bodyText, None, None, 'plain text from body') 

20 

 21 class myHTMLParser(HTMLParser): 

22  def do_meta(self, attrs): 

23  self.metas = attrs 

24 

 25 def convertFile(filename): 

26  mywriter = myWriter() 

27  absformatter = AbstractFormatter(mywriter) 

28  parser = myHTMLParser(absformatter) 

29  parser.feed(open(filename).read()) 

30  return ( _(parser.title), parser.formatter.writer.bodyText ) 31  32 import os 33 import os.path 

34 

 35 OUTPUTDIR = "./txt" 

36 INPUTDIR = "." 

37 if __name__ == "__main__": 

38  if not os.path.exists(OUTPUTDIR): 

39  os.mkdir(OUTPUTDIR) 

40 

 41  for file in os.listdir(INPUTDIR): 

42  if file[-4:] == '.htm': 

43  print "Coverting", file, 

44  outfilename, text = convertFile(file) 

45  outfilename = outfilename + '.txt' 

46  outfullname = os.path.join(OUTPUTDIR, outfilename) 

47  open(outfullname, "wt").write(text) 

48  print "Done!" 

49










本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1613102,如需转载请自行联系原作者
目录
相关文章
|
22天前
|
JavaScript 前端开发
HTML 脚本2
<noscript>标签用于在浏览器禁用或不支持脚本时提供替代内容。该元素可包含所有常见的 HTML body 元素。当脚本不可用时,<noscript> 中的内容将被显示。例如:`<noscript>抱歉,你的浏览器不支持 JavaScript!</noscript>`
|
22天前
|
JavaScript 前端开发
HTML 脚本1
JavaScript 通过 `<script>` 标签嵌入 HTML,增强页面的动态和交互性。它可以包含内联脚本或引用外部脚本文件,常用于图片操作、表单验证和内容动态更新。
|
22天前
|
JavaScript 前端开发
HTML 脚本3
本教程介绍JavaScript的基本用法,包括在HTML中直接输出文本、响应事件和处理HTML样式。示例代码展示了如何使用`document.write()`输出文本,通过点击按钮触发事件,以及利用`document.getElementById().style`修改元素样式。
|
2月前
|
安全 网络安全 文件存储
思科设备巡检命令Python脚本大集合
【10月更文挑战第18天】
78 1
思科设备巡检命令Python脚本大集合
|
8天前
|
数据采集 监控 数据挖掘
Python自动化脚本:高效办公新助手###
本文将带你走进Python自动化脚本的奇妙世界,探索其在提升办公效率中的强大潜力。随着信息技术的飞速发展,重复性工作逐渐被自动化工具取代。Python作为一门简洁而强大的编程语言,凭借其丰富的库支持和易学易用的特点,成为编写自动化脚本的首选。无论是数据处理、文件管理还是网页爬虫,Python都能游刃有余地完成任务,极大地减轻了人工操作的负担。接下来,让我们一起领略Python自动化脚本的魅力,开启高效办公的新篇章。 ###
|
1月前
|
关系型数据库 MySQL 数据库连接
python脚本:连接数据库,检查直播流是否可用
【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
126 68
|
6天前
|
监控 数据挖掘 数据安全/隐私保护
Python脚本:自动化下载视频的日志记录
Python脚本:自动化下载视频的日志记录
|
16天前
|
存储 Python
Python自动化脚本编写指南
【10月更文挑战第38天】本文旨在为初学者提供一条清晰的路径,通过Python实现日常任务的自动化。我们将从基础语法讲起,逐步引导读者理解如何将代码块组合成有效脚本,并探讨常见错误及调试技巧。文章不仅涉及理论知识,还包括实际案例分析,帮助读者快速入门并提升编程能力。
48 2
|
18天前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【10月更文挑战第36天】在数字化时代,运维工作的效率和准确性成为企业竞争力的关键。本文将介绍如何通过编写Python脚本来自动化日常的运维任务,不仅提高工作效率,还能降低人为错误的风险。从基础的文件操作到进阶的网络管理,我们将一步步展示Python在自动化运维中的应用,并分享实用的代码示例,帮助读者快速掌握自动化运维的核心技能。
33 3
|
23天前
|
缓存 运维 NoSQL
python常见运维脚本_Python运维常用脚本
python常见运维脚本_Python运维常用脚本
25 3