Board logo

标题: [转载代码] PowerShell查询天气 [打印本页]

作者: DAIC    时间: 2013-9-10 21:45     标题: PowerShell查询天气

最近全国雨水较多,写了个查询天气的小脚本,利用google提供的api。
  1. $city=Read-Host "请输入要查询城市字母全拼"
  2. $URI = "http://www.google.com/ig/api?hl=zh-cn&weather=$city"
  3. #建立WebClient对象
  4. $webclient = new-object net.webclient
  5. #获取XML
  6. try{
  7.     $proxy = [xml]$webclient.downloadstring($URI)
  8. }
  9. catch [Exception]{
  10.     "连接失败"
  11.     return
  12. }
  13. if( $Proxy.xml_api_reply.weather.problem_cause){
  14.     "没有该城市的天气信息或输入了错误的城市名"
  15.     return
  16. }
  17. #获取温度
  18. $Temp = $Proxy.xml_api_reply.weather.current_conditions.temp_c.GetAttribute("data")
  19. #获取天气
  20. $Condition = $Proxy.xml_api_reply.weather.current_conditions.Condition.GetAttribute("data")
  21. #获取湿度
  22. $humidity = $Proxy.xml_api_reply.weather.current_conditions.humidity.GetAttribute("data")
  23. #获取风力
  24. $wind= $Proxy.xml_api_reply.weather.current_conditions.wind_condition.GetAttribute("data")
  25. $Forecast=$null
  26. $Proxy.xml_api_reply.weather.selectNodes("//forecast_conditions") | ForEach-Object {
  27.     $Forecast+= $_.day_of_week.GetAttribute("data") + " "
  28.     $Forecast += $_.low.GetAttribute("data") + " - " + $_.high.GetAttribute("data")
  29.     $Forecast += " " + $_.condition.GetAttribute("data") + "`n"
  30. }
  31. Write-Host "========当前天气情况=======
  32. 城市: $city
  33. 温度: $Temp
  34. 天气: $Condition
  35. $humidity
  36. $wind
  37. $Forecast"
  38. 输出的结果1:
  39. ========当前天气情况=======
  40. 城市: beijing
  41. 温度: 25
  42. 天气: 雨
  43. 湿度: 94%
  44. 风向: 东、风速:3 米/秒
  45. 周三 22 - 29 可能有雨
  46. 周四 24 - 31 雷阵雨
  47. 周五 24 - 31 可能有暴风雨
  48. 周六 22 - 28 可能有暴风雨
  49. 输出的结果2:
  50. ========当前天气情况=======
  51. 城市: wuhan
  52. 温度: 32
  53. 天气: 晴
  54. 湿度: 62%
  55. 风向: 东南、风速:5 米/秒
  56. 周三 26 - 35 可能有暴风雨
  57. 周四 25 - 35 晴
  58. 周五 26 - 35 可能有暴风雨
  59. 周六 26 - 35 可能有暴风雨
复制代码
http://hi.baidu.com/shrekzz/item/58ca56f01537a01dcf9f325d




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2