Excel 从HTML标记内的文件中删除文本

Excel 从HTML标记内的文件中删除文本,excel,web-scraping,extract,analysis,text-extraction,Excel,Web Scraping,Extract,Analysis,Text Extraction,我有一个文件,我想从中提取日期,它是一个HTML源文件,所以它充满了我不需要的代码和短语。我需要提取包装在特定HTML标记中的日期的每个实例: 缩写title=“(这是我需要的文本))“数据utime=” 实现这一点最简单的方法是什么?如果您使用的是Java,您可以使用。您的问题不清楚这一点,请详细说明如果您使用的是Java,您到底想做什么。如果您使用的是Excel VBA,请详细说明您到底想做什么MSHTML库的参考(工具-参考)(参考菜单中标题为Microsoft HTML对象库) 我假设这

我有一个文件,我想从中提取日期,它是一个HTML源文件,所以它充满了我不需要的代码和短语。我需要提取包装在特定HTML标记中的日期的每个实例:

缩写title=“(这是我需要的文本))“数据utime=”


实现这一点最简单的方法是什么?

如果您使用的是Java,您可以使用。您的问题不清楚这一点,请详细说明如果您使用的是Java,您到底想做什么。如果您使用的是Excel VBA,请详细说明您到底想做什么MSHTML库的参考(工具-参考)(参考菜单中标题为
Microsoft HTML对象库

我假设这个文件是本地的,因为你调用了一个源文件。如果你需要先下载它,你需要另一个对MSXML和这段代码的引用

Sub ScrapeDateAbbrDownload()

    Dim xHttp As MSXML2.XMLHTTP
    Dim hDoc As MSHTML.HTMLDocument
    Dim hElem As MSHTML.HTMLGenericElement

    Set xHttp = New MSXML2.XMLHTTP
    xHttp.Open "GET", "file:///C:/Users/dick/Documents/My%20Dropbox/Excel/Testabbr.html"
    xHttp.send

    Do
        DoEvents
    Loop Until xHttp.readyState = 4

    'put into an htmldocument object
    Set hDoc = New MSHTML.HTMLDocument
    hDoc.body.innerHTML = xHttp.responseText

    'loop through abbr tags
    For Each hElem In hDoc.getElementsByTagName("abbr")
        'only those that have a data-utime attribute
        If Len(hElem.getAttribute("data-utime")) > 0 Then
            'get the title attribute
            Debug.Print hElem.getAttribute("title")
        End If
    Next hElem

End Sub

如果您使用的是Excel VBA,请设置对MSHTML库的引用(工具-引用)(在“引用”菜单中标题为“Microsoft HTML对象库”)

我假设这个文件是本地的,因为你调用了一个源文件。如果你需要先下载它,你需要另一个对MSXML和这段代码的引用

Sub ScrapeDateAbbrDownload()

    Dim xHttp As MSXML2.XMLHTTP
    Dim hDoc As MSHTML.HTMLDocument
    Dim hElem As MSHTML.HTMLGenericElement

    Set xHttp = New MSXML2.XMLHTTP
    xHttp.Open "GET", "file:///C:/Users/dick/Documents/My%20Dropbox/Excel/Testabbr.html"
    xHttp.send

    Do
        DoEvents
    Loop Until xHttp.readyState = 4

    'put into an htmldocument object
    Set hDoc = New MSHTML.HTMLDocument
    hDoc.body.innerHTML = xHttp.responseText

    'loop through abbr tags
    For Each hElem In hDoc.getElementsByTagName("abbr")
        'only those that have a data-utime attribute
        If Len(hElem.getAttribute("data-utime")) > 0 Then
            'get the title attribute
            Debug.Print hElem.getAttribute("title")
        End If
    Next hElem

End Sub

因此,基本上我有一个15mb的文件,它是从保存的网页中提取的。该网页包含facebook消息,每条消息都有日期戳,我想对每个日期的消息进行分析,所以每次出现日期时我都需要提取。希望这样可以清除它。如果编程语言不重要,那么我当然会推荐JSoupOr Beautify如果你喜欢python,请点击。因此,基本上我有一个15mb的文件,它是从保存的网页中提取的。该网页包含facebook消息,每条消息都有日期戳,我想对每个日期的消息进行分析,所以我需要在每次出现日期时提取消息。希望这样可以清除它。如果编程语言不重要,那么我可以确定如果您喜欢python,请推荐JSoup或BeautifulSoup。这不是数据挖掘。请重新命名并重新标记为。数据挖掘本质上是一种大规模统计分析;这最多是数据挖掘的预处理。哦,为什么要标记为“excel”“?这不是数据挖掘。重新命名并重新标记为。数据挖掘本质上是一种大规模统计分析;这至多是数据挖掘的预处理。哦,为什么这个标签是“excel”?