求指导 一个关于获取天气预报的脚本!!

sh/bash/dash/ksh/zsh等Shell脚本
回复
Archy@jxnu
帖子: 3
注册时间: 2011-08-05 11:44

求指导 一个关于获取天气预报的脚本!!

#1

帖子 Archy@jxnu » 2011-08-05 12:31

刚接触shell这个东西 在学习这个脚本 其中有几个问题 希望高人指点:

代码: 全选

#!/bin/bash
#weather.sh
#使用方法 weather.sh 城市,默认城市为上海
if [ -n "$1" ]  #判断输入是否为空
then
place="$1"
else
place="北京"
fi
rm -f index.shtml 
wget -q http://weather.sina.com.cn/text/index.shtml
iconv -f GB2312 -t UTF-8 index.shtml > index.shtml1 
ifzhixia=$(grep "$place" -c index.shtml1) 
if [ "$ifzhixia" = 2 ]
then
cat index.shtml | grep "$place" -A 3 |sed '1d' | grep '>.\+<' -o |tr -d '<'|tr -d '>' > .weathertemp2
elif [ "$ifzhixia" = 1 ]
then
cat index.shtml | grep "$place" -A 3 | grep '>.\+<' -o |tr -d '<'|tr -d '>' > .weathertemp2
else
echo "没有该城市的天气讯息!"
#rm -f index.shtml .weathertemp .weathertemp2 index.shtml1
exit 0
fi
condition="天气状况: "
wind="风向风力: "
tempr="最高温度: "
placetitle="城市:"
echo "$placetitle">.weathertemp
echo "$condition" >> .weathertemp
echo "$wind" >> .weathertemp
echo "$tempr" >> .weathertemp
echo -e "$place今天的天气情况为:\n"
paste .weathertemp .weathertemp2
rm -f index.shtml .weathertemp .weathertemp2 index.shtml1
exit 0
第一,那个wget下载是是整个网站吗,那样的话不会很慢吗?
第二,那个用wget下载的链接是如何做的?
第三,在下载了网站之后,对那个搜索所需信息的两条代码不解。
这个脚本我试着运行过,但无论输入任何城市得到的都是“没有该城市的天气讯息”。
纯新手,求勿鄙视,谢谢了啊!! :em06
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 求指导 一个关于获取天气预报的脚本!!

#2

帖子 eexpress » 2011-08-05 12:38

只能全部下载后分析。

论坛天气的多了。多参考。
● 鸣学
头像
cuihao
帖子: 4793
注册时间: 2008-07-24 11:33
来自: 郑州
联系:

Re: 求指导 一个关于获取天气预报的脚本!!

#3

帖子 cuihao » 2011-08-05 12:41

我记得Google有XML的天气信息来着,使用比较方便。
求人不如求它仨: 天蓝的Wiki 屎黄的Wiki 绿
Site: CUIHAO.TK    Twitter: @cuihaoleo
Machine: Athlon64 X2 5200+ / 2x2GB DDR2-800 / GeForce GTS 450
AD: ~まだ見ぬ誰かの笑顔のために~
Archy@jxnu
帖子: 3
注册时间: 2011-08-05 11:44

Re: 求指导 一个关于获取天气预报的脚本!!

#4

帖子 Archy@jxnu » 2011-08-05 12:44

eexpress 写了:只能全部下载后分析。

论坛天气的多了。多参考。


内个 能推荐个好懂点的不 给个链接???
头像
wiewi
帖子: 628
注册时间: 2008-11-20 22:50
系统: ArchLinux

Re: 求指导 一个关于获取天气预报的脚本!!

#5

帖子 wiewi » 2011-08-05 21:04

Archy@jxnu 写了:
eexpress 写了:只能全部下载后分析。

论坛天气的多了。多参考。


内个 能推荐个好懂点的不 给个链接???
[liwei@Arch ~] $ cat bin/weather
#!/bin/bash
area=beijing
text="$(w3m -dump "http://wap.baidu.com/tq?&ssid=0&from=0&area=$area" 2>/dev/null | sed '2,4!d')"
echo "$text"
2011-08-05-21-03-00.png
百度有时候不太准(见图),你换个新浪神马的试试,弄好了代码贴出来共享下 :em09
===我的小窝===
无聊吗?点我吧,楼主迫切期待你的光临~~
又一个轮子
------------------------------------
这年头,没有1000贴都不好意思见人了
------------------------------------
献丑不如藏拙
------------
Archy@jxnu
帖子: 3
注册时间: 2011-08-05 11:44

Re: 求指导 一个关于获取天气预报的脚本!!

#6

帖子 Archy@jxnu » 2011-08-05 22:16

[liwei@Arch ~] $ cat bin/weather
#!/bin/bash
area=beijing
text="$(w3m -dump "http://wap.baidu.com/tq?&ssid=0&from=0&area=$area" 2>/dev/null | sed '2,4!d')"
echo "$text"
2011-08-05-21-03-00.png
百度有时候不太准(见图),你换个新浪神马的试试,弄好了代码贴出来共享下 :em09[/quote]

代码: 全选

text="$(w3m -dump  "http://wap.baidu.com/tq?&ssid=0&from=0&area=$area" 2>/dev/null | sed '2,4!d')"
哥们 就是这种代码不懂啊 要不你帮我网上找找相关的东西给我学习学习?小弟无限感激!!!! :em06
回复