日付を抽出したいファイルがあります.HTMLソースファイルなので、必要のないコードやフレーズがたくさんあります。私は、特定のHTMLタグに包まれています日付のすべてのインスタンスを抽出する必要があります。HTMLタグ内のファイルからテキストを掻き集める
略称タイトル=「((これは私が必要なテキストである))、」データ・UTIME =」
に最も簡単な方法は何
日付を抽出したいファイルがあります.HTMLソースファイルなので、必要のないコードやフレーズがたくさんあります。私は、特定のHTMLタグに包まれています日付のすべてのインスタンスを抽出する必要があります。HTMLタグ内のファイルからテキストを掻き集める
略称タイトル=「((これは私が必要なテキストである))、」データ・UTIME =」
に最も簡単な方法は何
あなたがJsoupを使用することができますJavaを使用している場合。これは、あなたの質問から明らかではない?これを達成するため、あなたはエクセルVBAを使用している場合
基本的に私は保存されたWebページから抽出された15MBのファイルを持っています。ページにはFacebookのメッセージが含まれていて、各メッセージに日付が記録されています。日付ごとのメッセージを分析したいので、日付が表示されるたびに抽出する必要があります。それをクリアする希望。 – user1023420
もしプログラミング言語が問題でなければ、私は確かにJSoup –
またはPythonを好むならBeautifulSoupをお勧めします。 –
をやろうとしている正確に何について詳しく説明してください、基準値を設定(Tools - References)をMSHTMLライブラリ(参考メニューのMicrosoft HTML Object Library
と表記)
Sub ScrapeDateAbbr()
Dim hDoc As MSHTML.HTMLDocument
Dim hElem As MSHTML.HTMLGenericElement
Dim sFile As String, lFile As Long
Dim sHtml As String
'read in the file
lFile = FreeFile
sFile = "C:/Users/dick/Documents/My Dropbox/Excel/Testabbr.html"
Open sFile For Input As lFile
sHtml = Input$(LOF(lFile), lFile)
'put into an htmldocument object
Set hDoc = New MSHTML.HTMLDocument
hDoc.body.innerHTML = sHtml
'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
ソースファイルを呼び出してからファイルがローカルであると仮定しました。最初にダウンロードする必要がある場合は、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
これは*データマイニングではありません。タグを取り消し、[タグ:ウェブスクレイピング]にタグを付け直しました。 データマイニングは基本的に大規模な*統計分析*の一種です。これはデータマイニングのための多くの前処理です。ああ、なぜこのタグが「優れている」のですか? –