使用firefox将数千个html文件保存为txt文件-如何自动化此工作?

使用firefox将数千个html文件保存为txt文件-如何自动化此工作?,firefox,automation,firefox-addon,Firefox,Automation,Firefox Addon,我有数千个html文件,需要使用firefox将每个文件保存为txt 如果我手动执行此操作,我会在firefox中打开每个html文件,单击文件菜单,单击“将页面另存为”菜单项,然后选择格式为“文本”,并保存到本地磁盘 但是如何使这项工作自动化呢 有任何脚本/工具可以帮助实现这一点吗 谢谢。如果你的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选择。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项: 从每个文件。它为内置的

我有数千个html文件,需要使用firefox将每个文件保存为txt

如果我手动执行此操作,我会在firefox中打开每个html文件,单击文件菜单,单击“将页面另存为”菜单项,然后选择格式为“文本”,并保存到本地磁盘

但是如何使这项工作自动化呢

有任何脚本/工具可以帮助实现这一点吗


谢谢。

如果你的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选择。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项:

  • 从每个文件。它为内置的
    HTMLParser
    模块和使用提供了示例

  • 使用Selenium自动化您的webbrowser:

  • 如果您了解javascript,可以使用PhantomJS: ,这是一个您需要的无头web浏览器 使用javascript脚本驱动


  • 如果您的目标是让firefox从每个页面中删除html并只保存文本,那么有很多选项。我不知道有哪款firefox插件能够足够智能地在目录中的每个文件上循环以执行宏,因此以下是一些选项:

  • 从每个文件。它为内置的
    HTMLParser
    模块和使用提供了示例

  • 使用Selenium自动化您的webbrowser:

  • 如果您了解javascript,可以使用PhantomJS: ,这是一个您需要的无头web浏览器 使用javascript脚本驱动

  • 我有数千个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
    
    我有数千个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(虽然我不是很熟悉,但我现在就可以学习)。你能告诉我你的解决方案的更多细节吗?我已经补充了原始答案。让我知道这是否有效,或者您是否需要任何进一步的指导;我很乐意帮忙。