スーの道具箱/
気まぐれ日記/2003-03-07
の編集
[
ホーム
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
Top
>
気まぐれ日記
> 2003-03-07
***ASP ASPが出力するHTMLを取得する方法がわからず、URLから取得する方法を検討中です。~ -IEコンポーネント --かな〜り重いです。しかもHTMLの中身が加工されているような... -BASP21のソケット通信 --本命だと思っているのですが、BASP21をインストールするとセキュリティの確保が面倒なので... -その他 --Microsoft.XMLHTTPで強引にとってこれるみたいです。(厳密にはXMLになるのかな) --自動でUnicodeに変換されるので、FSOでUnicodeファイルに保存すると簡単に変換できるみたい。 --関数にするとこんな感じです。エラー処理は手抜き<ぉぃ #code(vb){{ ' URLからHTMLテキストを取得 Function GetHtml(ByVal strURL) Dim objXmlHttp, objFSO, objTextFile Dim strHtml, strTmpFileName Set objFSO = Server.CreateObject("Scripting.FileSystemObject") Set objXmlHttp = Server.CreateObject("Microsoft.XMLHTTP") strTmpFileName = objFSO.GetSpecialFolder(2) & "\" & objFSO.GetTempName '' HTML取得(XMLとして) strHtml = "" On Error Resume Next objXmlHttp.Open "GET", strURL, False objXmlHttp.Send If Err.Number = 0 Then strHtml = objXmlHttp.responseBody On Error GoTo 0 If Len(strHtml) > 0 Then '' UNICODEとしてファイル格納 On Error Resume Next Set objTextFile = objFSO.CreateTextFile(strTmpFileName, True, True) objTextFile.Write strHtml objTextFile.Close On Error GoTo 0 '' ShiftJISとしてファイル読込 On Error Resume Next Set objTextFile = objFSO.OpenTextFile(strTmpFileName, 1, False, 0) If Err.Number = 0 Then strHtml = Mid(objTextFile.ReadAll(), 3) objTextFile.Close objFSO.DeleteFile strTmpFileName On Error GoTo 0 Set objTextFile = Nothing End If Set objFSO = Nothing Set objXmlHttp = Nothing '' 取得したHTMLをセット GetHtml = strHtml End Function }} ~<code>タグの存在に今日気づきました。フォントを決めうちより良いかも。
タイムスタンプを変更しない
***ASP ASPが出力するHTMLを取得する方法がわからず、URLから取得する方法を検討中です。~ -IEコンポーネント --かな〜り重いです。しかもHTMLの中身が加工されているような... -BASP21のソケット通信 --本命だと思っているのですが、BASP21をインストールするとセキュリティの確保が面倒なので... -その他 --Microsoft.XMLHTTPで強引にとってこれるみたいです。(厳密にはXMLになるのかな) --自動でUnicodeに変換されるので、FSOでUnicodeファイルに保存すると簡単に変換できるみたい。 --関数にするとこんな感じです。エラー処理は手抜き<ぉぃ #code(vb){{ ' URLからHTMLテキストを取得 Function GetHtml(ByVal strURL) Dim objXmlHttp, objFSO, objTextFile Dim strHtml, strTmpFileName Set objFSO = Server.CreateObject("Scripting.FileSystemObject") Set objXmlHttp = Server.CreateObject("Microsoft.XMLHTTP") strTmpFileName = objFSO.GetSpecialFolder(2) & "\" & objFSO.GetTempName '' HTML取得(XMLとして) strHtml = "" On Error Resume Next objXmlHttp.Open "GET", strURL, False objXmlHttp.Send If Err.Number = 0 Then strHtml = objXmlHttp.responseBody On Error GoTo 0 If Len(strHtml) > 0 Then '' UNICODEとしてファイル格納 On Error Resume Next Set objTextFile = objFSO.CreateTextFile(strTmpFileName, True, True) objTextFile.Write strHtml objTextFile.Close On Error GoTo 0 '' ShiftJISとしてファイル読込 On Error Resume Next Set objTextFile = objFSO.OpenTextFile(strTmpFileName, 1, False, 0) If Err.Number = 0 Then strHtml = Mid(objTextFile.ReadAll(), 3) objTextFile.Close objFSO.DeleteFile strTmpFileName On Error GoTo 0 Set objTextFile = Nothing End If Set objFSO = Nothing Set objXmlHttp = Nothing '' 取得したHTMLをセット GetHtml = strHtml End Function }} ~<code>タグの存在に今日気づきました。フォントを決めうちより良いかも。
テキスト整形のルールを表示する