こんにちは、VBSでRSSフィードを解析し、その内容をcmdに表示する方法を理解しようとしています。ネットで見つけたコードを入手しました。これは私がこれまでに得たものです。
バッチファイル:
:news
start scripts\xml\getxml.exe -N --directory-prefix=%temp% http://feeds.bbci.co.uk/news/rss.xml
:newscheck
if NOT EXIST %temp%\rss.xml (
ping 123.45.67.89 -n 1 -w 500 > nul.
goto newscheck
)
start scripts\news\parsebbcnews.vbs
ping 123.45.67.89 -n 1 -w 500 > nul.
:newsxmlparsecheck
if NOT EXIST %temp%\bbcnews.txt (
ping 123.45.67.89 -n 1 -w 500 > nul.
goto newsxmlparsecheck
)
set /p headline= <%temp%\bbcnews.txt
echo %headline%
%speech% "%headline%"
del %temp%\rss.xml
del %temp%\bbcnews.txt
goto start
次に、これによりVBSが開始されます。
Dim xmlDoc, objNodeList, plot
Set wshShell = CreateObject( "WScript.Shell" )
tfolder = wshShell.ExpandEnvironmentStrings("%TEMP%")
Set xmlDoc = CreateObject("Msxml2.DOMDocument")
xmlDoc.load(tfolder & "\rss.xml")
Set objNodeList = xmlDoc.getElementsByTagName("channel/item/description") 'Node to search for
Set objFSO = CreateObject("Scripting.FileSystemObject")
' Write all found results into forecast.txt
Const ForWriting = 2
Set objTextFile = objFSO.OpenTextFile _
(tfolder & "\bbcnews.txt", ForWriting, True)
If objNodeList.length > 0 then
For each x in objNodeList
plot=x.Text
objTextFile.WriteLine(plot)
Next 'just remove this?
objTextFile.Close
End If
'Extract todays data (first line) from 'forecast.txt' and write each data type to seperate line in today.txt
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
(tfolder & "\bbcnews.txt", ForReading)
strNextLine = objTextFile.Readline
'currentsplit = Split(strNextLine , ", ")
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(tfolder & "\headline.txt", ForWriting, True)
objTextFile.WriteLine(strNextLine)
これは、bbcから1つのニュースRSSフィードを取得します。また、複数のフィードを表示したい。
私はこのコードを作成しなかったので、さまざまなサイトからrssを取得するために、スクリプトと同様のコードを取得する方法がわかりません。したがって、基本的に私が望んでいるのは、vb-scriptを使用してこれを実行し、cmdで表示する方法を知ることです。