使用firefox将数千个html文件保存为txt文件-如何自动化此工作?
我有数千个html文件,需要使用firefox将每个文件保存为txt 如果我手动执行此操作,我会在firefox中打开每个html文件,单击文件菜单,单击“将页面另存为”菜单项,然后选择格式为“文本”,并保存到本地磁盘 但是如何使这项工作自动化呢 有任何脚本/工具可以帮助实现这一点吗使用firefox将数千个html文件保存为txt文件-如何自动化此工作?,firefox,automation,firefox-addon,Firefox,Automation,Firefox Addon,我有数千个html文件,需要使用firefox将每个文件保存为txt 如果我手动执行此操作,我会在firefox中打开每个html文件,单击文件菜单,单击“将页面另存为”菜单项,然后选择格式为“文本”,并保存到本地磁盘 但是如何使这项工作自动化呢 有任何脚本/工具可以帮助实现这一点吗 谢谢。如果你的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选择。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项: 从每个文件。它为内置的
谢谢。如果你的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选择。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项:
HTMLParser
模块和使用提供了示例如果您的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选项。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项:
HTMLParser
模块和使用提供了示例编辑: 首先,从开始,它很好地解释了如何开始使用shdocvw,您将需要这样做。 设置参考后,使用函数
Function GetNewIE() As SHDocVw.InternetExplorer
及
从链接(只需按照链接中的描述复制到项目中)加载各个html文件,使用循环遍历每个文件。(Excel对此很有帮助,因为您可以将文件列表放入单元格中,然后在每个单元格中循环检索。)我从未对这么多文件执行过类似操作,因此我无法保证这会起作用,不幸的是
Dim IE As SHDocVw.InternetExplorer
Dim lRow as Long 'Long in case you have a LOT of files
Dim iFNum As Integer
Dim sFilePath As String
Set IE = GetNewIE
For lRow = 1 To 5000 Step 1 ' Assuming you have 5,000 html files, so 5,000 rows with the paths to each
sFilePath = ActiveSheet.Range("A" & lRow).Value ' This should also include the filepath. i.e. "C:\dir\..."
If LoadWebPage(IE, sFilePath) Then
iFNum = FreeFile(lRow)
Open sFilePath & ".txt" For Output As iFNum
Write #iFNum, IE.Document.InnerText
Close #iFNum
End If
Next lRow
我有数千个html文件
你手头有这些文件吗,还是在线的
…并需要将它们保存为txt
任何文本编辑器都应该能够在其中保存数据(即为什么使用FireFox),我认为直接将.htm或.html重命名为.txt。将工作(至少在任何Windows系统上)。或者您的意思是:只保存HTML文件中显示的文本
编辑: 首先,从开始,它很好地解释了如何开始使用shdocvw,您将需要这样做。 设置参考后,使用函数
Function GetNewIE() As SHDocVw.InternetExplorer
及
从链接(只需按照链接中的描述复制到项目中)加载各个html文件,使用循环遍历每个文件。(Excel对此很有帮助,因为您可以将文件列表放入单元格中,然后在每个单元格中循环检索。)我从未对这么多文件执行过类似操作,因此我无法保证这会起作用,不幸的是
Dim IE As SHDocVw.InternetExplorer
Dim lRow as Long 'Long in case you have a LOT of files
Dim iFNum As Integer
Dim sFilePath As String
Set IE = GetNewIE
For lRow = 1 To 5000 Step 1 ' Assuming you have 5,000 html files, so 5,000 rows with the paths to each
sFilePath = ActiveSheet.Range("A" & lRow).Value ' This should also include the filepath. i.e. "C:\dir\..."
If LoadWebPage(IE, sFilePath) Then
iFNum = FreeFile(lRow)
Open sFilePath & ".txt" For Output As iFNum
Write #iFNum, IE.Document.InnerText
Close #iFNum
End If
Next lRow
你知道脚本语言吗?您使用的是什么系统?任何脚本语言都可以。我认为这里不需要太多的脚本编程。Windows平台。另一个选择是利用文本浏览器。你知道任何脚本语言吗?您使用的是什么系统?任何脚本语言都可以。我认为这里不需要太多的脚本编程。Windows平台。另一个选项是利用文本浏览器1。这些文件保存在本地磁盘中,而不是在线html文件。我想使用Firefox来完成html条带的工作,因为Firefox可以很好地完成这项工作。是的,我只想保存html文件中显示的文本,没有任何html标记/css/javascript。我在IE中使用VBA有很好的经验。你愿意使用VBA吗?(我相信只需要一些小的改变就可以让FF工作。)太棒了!是的,我可以使用VBA(虽然我不是很熟悉,但我现在就可以学习)。你能告诉我你的解决方案的更多细节吗?我已经补充了原始答案。让我知道这是否有效,或者您是否需要任何进一步的指导;我很乐意帮忙。这些文件保存在本地磁盘中,而不是在线html文件。我想使用Firefox来完成html条带的工作,因为Firefox可以很好地完成这项工作。是的,我只想保存html文件中显示的文本,没有任何html标记/css/javascript。我在IE中使用VBA有很好的经验。你愿意使用VBA吗?(我相信只需要一些小的改变就可以让FF工作。)太棒了!是的,我可以使用VBA(虽然我不是很熟悉,但我现在就可以学习)。你能告诉我你的解决方案的更多细节吗?我已经补充了原始答案。让我知道这是否有效,或者您是否需要任何进一步的指导;我很乐意帮忙。