我以前的代码在下面,,提取雅虎天气的程序。。现在雅虎天气改版, 代码失效了。。求高手帮我修改一下程序。。谢谢 
或者有别的比如 新浪  QQ 的天气小偷程序都可以 。 谢谢帮忙 
我的代码 :
<%@ page contentType="text/html; charset=gbk" language="java"%><%@ page import="java.net.*,
     java.io.*,
 java.io.InputStreamReader,
 java.net.URL,
 java.util.regex.Pattern,
 java.util.regex.Matcher,            
 java.util.regex.*"%>
<%
String tempgroup =  "";
URL url = new URL("http://weather.cn.yahoo.com/weather.html?city=wulumuqi&s=1");          // 这里的地址是雅虎天气的地址 
InputStreamReader isr = new InputStreamReader(url.openStream(), "UTF-8");
StringBuffer sb = new StringBuffer();
int intChr;
while (-1 != (intChr = isr.read())) {
sb.append((char) intChr);
}
Matcher m = Pattern.compile("<!--map -->.*?<!--//map -->", Pattern.DOTALL).matcher(sb);
if (m.find()) { tempgroup = m.group();}m = Pattern.compile("<!--today -->.*?<!--//today -->", Pattern.DOTALL).matcher(sb);
if (m.find()) {
tempgroup = m.group();} %>
     <%=tempgroup%>

解决方案 »

  1.   

    去看看这个吧,挺有趣的,可以嵌到页面中http://weather.china.com.cn/cityshow.html
      

  2.   

    楼主的这个程序写的俺看不懂 ,可否解释以下,Matcher m = Pattern.compile("<!--map -->.*?<!--//map -->", Pattern.DOTALL).matcher(sb);  这句干什么用的啊?
      

  3.   

    十分感谢  回复人:bao110908(火龙果) () 信誉:100    二话不说。给分。。
      

  4.   

    定义Matcher m 的那行替换为
    Matcher m = Pattern.compile("<p class=\"l\" style=\"margin-top:5px;\"><span class=\"f18\">.*?</p>", Pattern.DOTALL).matcher(sb);试试,不知道符合要求么