使用ironruby播放twitter的timeline

require "System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
require "System.Speech, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
require "System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"

wc = System::Net::WebClient.new
content = wc.download_string("http://twitter.com/statuses/public_timeline.xml")
xmlDoc = System::Xml::XmlDocument.new
spk = System::Speech::Synthesis::SpeechSynthesizer.new

xmlDoc.load_xml(content)
statusesNode = xmlDoc.select_single_node("statuses")
for status in statusesNode
    s = "<?xml version=\"1.0\"?><speak version=\"1.0\" xml:lang=\"en-US\"><break/>"
    s = s + status.select_single_node("text").InnerText + "</speak>"
    puts status.select_single_node("text").InnerText
    spk.speak_ssml(s)
end

 

如果安装了更好的真人语音库,读起来应该效果更好吧。

 

ironruby使用的是0.91版,速度还不错。这段代码来自微软一个培训的视频,还是挺好玩的

 

几个点需要注意:

1,必须用strong name来require,不懂,不知道原因。

2,国内上不了twitter,自己想办法吧。

 

你可能感兴趣的:(xml,.net,twitter)