❶ php如何获得当地的天气预报 - 技术问答
这个无需PHP做。前端就可以获取,直接搜索天气API,会有很多天气接口。
http://www.weather.com.cn/data/sk/101010100.html
或者
http://cj.weather.com.cn/
❷ php怎么抓取天气预报
可以借由php的api或者preg_match_all偷偷撷取去达成目的
这里给你一段我给台湾朋友有一段源码
<?php
header("Content-Type:text/html;charset=utf-8");
functiongetWeather($city){
$toURL="
$city.htm";
$post=array();
$ch=curl_init();
$options=array(
CURLOPT_REFERER=>'',
CURLOPT_URL=>$toURL,
CURLOPT_VERBOSE=>0,
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_USERAGENT=>"Mozilla/4.0(compatible;)",
CURLOPT_POST=>true,
CURLOPT_POSTFIELDS=>http_build_query($post),
);
curl_setopt_array($ch,$options);
$result=curl_exec($ch);
curl_close($ch);
//连接中央气象局
echo'<pre>';
preg_match_all('/<tableclass="FcstBoxTable01"[^>]*[^>]*>(.*)</div>/si',$result,$matches,PREG_SET_ORDER);
preg_match_all('/<tdnowrap="nowrap"[^>]*[^>]*>(.*)</td>/si',$matches[0][1],$m1,PREG_SET_ORDER);
$m2=explode('</td>',$m1[0][1]);
//print_r($m2);//取得每日资料m2[0~6]
$weather=array();
for($i=0;$i<=6;$i++){
preg_match_all('/src=[^>]*[^>](.*)/si',$m2[$i],$m5,PREG_SET_ORDER);//取得天气图档
$m6=explode('"',$m5[0][0]);
$wi='
($m6[1],'../../');
$wtitle=$m6[3];
print_r($wtitle);
$weather[$i]['date']=date("m-d",mktime(0,0,0,date("m"),date("d")+$i,date("Y")));
$weather[$i]['temperature']=trim(strip_tags($m2[$i]));
$weather[$i]['title']=$wtitle;
$weather[$i]['img']=$wi;
}
return($weather);
}
$weather=getWeather("Taipei_City");
print_r($weather);
//header("Location:loc.php");
?>
首先
$toURL="http://www.cwb.gov.tw/V7/forecast/taiwan/inc/city/$city.htm";
这里是读取资料的网址
上面的是台湾中央气象局
preg_match_all('/<tableclass="FcstBoxTable01"[^>]*[^>]*>(.*)</div>/si',$result,$matches,PREG_SET_ORDER);
preg_match_all('/<tdnowrap="nowrap"[^>]*[^>]*>(.*)</td>/si',$matches[0][1],$m1,PREG_SET_ORDER);
这里是截取台湾中央气象局网页信息table class="FcstBoxTable01" [^>]*[^>]*>(.*)</div>的资料以及<td nowrap="nowrap" [^>]*[^>]*>(.*)</td>的资料分别是1天跟1周
$m2=explode('</td>',$m1[0][1]);
//print_r($m2);//取得每日资料m2[0~6]
这里是取得每日的资料
preg_match_all('/src=[^>]*[^>](.*)/si',$m2[$i],$m5,PREG_SET_ORDER);//取得天气图档
这里是取得天气的图档
$m6=explode('"',$m5[0][0]);
$wi='
($m6[1],'../../');
$wtitle=$m6[3];
print_r($wtitle);
$weather[$i]['date']=date("m-d",mktime(0,0,0,date("m"),date("d")+$i,date("Y")));
$weather[$i]['temperature']=trim(strip_tags($m2[$i]));
$weather[$i]['title']=$wtitle;
$weather[$i]['img']=$wi;
这里是返回的网址,日期,标题,图档等等的资料
$weather=getWeather("Taipei_City");
print_r($weather);
然后这里是显示出地区的一周天气预报
结论:就是如果你想从网站上面截取天气预报
在php可以是用preg_match_all(网页的表格table,表格的列数tr,表格的栏位td,或者更加广泛的标签div等等获取)
❸ 谁帮我找一个天气预报网页代码
代码如下:
<iframe id=weatherwin border=0 name=weatherwin marginWidth=0 marginHeight=0 src="http://weather.369.com/weather.html" frameBorder=no width=160 scrolling=no height=60></iframe>
也可以用265.com的代码.在那里上网就显示那里的天气
❹ PHP 页面调用天气预报web服务 我想在一个PHP页面直接调用现成的webservice
完全可以。前提是要打开soap扩展,调用方法如下:
<?php
$client = new SoapClient('http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl');
$parm=array('theCityCode'=>'三亚','theUserID'=>'');
$result=$client->getWeather($parm);
print_r($result);
?>
❺ 网页中加天气预报代码 能显示国外的天气
<iframe src=" http://tsov.net/tq/weather.php?bgcolor=383838&txtcolor=eee " width="205" height="131" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" border="0" /></iframe> 把这段代码中的 那个网址【 http://tsov.net/tq/weather.php?bgcolor=383838&txtcolor=eee 】换成有你 想要地方的天气的网址即可,另外注意高度和宽度要适合。原理很简单,你 可以往那儿放个网络试试 追问: <iframe src=" http://www.thinkpage.cn/weather/weather.aspx?c=UKXX0085&l=zh-TW&p=MSN&a=1&u=C&s=2&m=1&x=1&d=0&fc=00B0F0&bgc=&bc= " frameborder="0" scrolling="no" width="200" height="130" allowTransparency="true"></iframe> 这个是我头刚找到的 你说的我没试出来 谢谢 回答: 那我 都试出来了 呀,,刚才,你 可以吧那代码保存成HTML再打开看看是否如意 追问: <iframe src=" http://www..com/tq/weather.php?bgcolor=383838&txtcolor=eee " width="205" height="131" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" border="0" /></iframe> 是这样改吗 回答: <iframe src=" http://www.thinkpage.cn/weather/weather.aspx?c=UKXX0085&l=zh-TW&p=MSN&a=1&u=C&s=2&m=1&x=1&d=0&fc=00B0F0&bgc=&bc= " frameborder="0" scrolling="no" width="200" height="130" allowTransparency="true"></iframe> 就用这个代码,保存成HTML再打开看 追问: 这个不是我刚发给你的吗 这个我试过了 可以的 我是说你让我改的没试出来 回答: http://www..com/tq/weather.php?bgcolor=383838&txtcolor=eee " 这网址本来就打不开, 我的 意思是网址你可以随便换,只是注意宽和高,就行
记得采纳啊
❻ php获取天气预报的代码
<?php
$URLStyle="http://flash.weather.com.cn/wmaps/xml/%s.xml";
$chinaURL=sprintf($URLStyle,"china");
$chinaStr=file_get_contents($chinaURL);
$chinaObj=simplexml_load_string($chinaStr);
$chinaObjLen=count($chinaObj->city);
echo"chinaObjLen=".$chinaObjLen." ";
for($i=0;$i<$chinaObjLen;$i++){
//遍历省一级节点,共37个
$level1=$chinaObj->city[$i]["pyName"];
$shengjiURL=sprintf($URLStyle,$level1);
$shengjiStr=file_get_contents($shengjiURL);
//echo$shengjiStr;
$shengjiObj=simplexml_load_string($shengjiStr);
$shengjiObjLen=count($shengjiObj->city);
//echo$chinaObj->city[$i]["quName"];
//echo"".$shengjiObjLen." ";
for($j=0;$j<$shengjiObjLen;$j++){
//遍历市一级节点
$level2=$shengjiObj->city[$j]["pyName"];
$shijiURL=sprintf($URLStyle,$level2);
$shijiStr=file_get_contents($shijiURL);
//echo$shijiStr;
$shijiObj=simplexml_load_string($shijiStr);
//直辖市和海南、台湾、钓鱼岛等没有县级节点
if(!$shijiObj){
echo"WARNNING:notexsitnextlevelnode.-".$level1."-".$shijiURL." ";
echo'"'.$shengjiObj->city[$j]["cityname"].'"=>';
echo$shengjiObj->city[$j]["url"].", ";
continue;
}
$shijiObjLen=count($shijiObj->city);
//echo$shengjiObj->city[$j]["cityname"]."";
//echo$shijiObjLen." ";
for($k=0;$k<$shijiObjLen;$k++){
//遍历县一级节点
$xianji_code=$shijiObj->city[$k]["url"];
echo'"'.$shijiObj->city[$k]["cityname"].'"=>';
echo$shijiObj->city[$k]["url"].", ";
//echo$xianji_code." ";
}
}
}
//print_r($chinaObj);
?>
通过XML接口根节点递归获得全国几千个县以上城市cide code的代码
❼ 谁能给我提供一个网页中插入天气预报的代码或者是网站 最好是那种可以自己切换城市的
<iframewidth="280"scrolling="no"height="25"frameborder="0"allowtransparency="true"src="http://i.tianqi.com/index.php?c=code&id=34&icon=1&num=3"></iframe>
❽ 如何在网页中显示天气预报
1,打开360安全卫士
2,点击优化加速--
3,点击右下角“开机小助手设置”
4,勾上显示天气预报
(8)php天气预报网页扩展阅读:
天气预报的好处:
1,农民对于天气预报的依赖比普通群众更强,因为天气气候条件直接影响着农业生产,庄稼的播种、收获都跟天气有关,天帮忙则丰收,灾害天气多,收成就会减少。
2,主要是为了预防疾病,尤其是感冒,关注天气变化,加减衣服。特别是突然下雨或者降温,加减衣服不当很容易生病。
关注天气可以注意下雨及降温。这种比较突然的天气变化是住在城市的人的必须关注点。如果要去外地,更要知道当地是什么天气情况,决定穿衣和携带的衣服。
3,天气时刻伴随着我们的生活,应用天气预报可以及时了解天气的趋势,给人们的工作、出行、旅游、化妆、洗车、运动生活等带来乐趣和便利。
以为未来的事情做安排和打算啊,比如明天旅游,明天出行。大的作用就可以预防经济损失,比如暴风,台风等。
❾ 网页天气预报插件代码
不用安装插件,你把下面的代码插入你的网页中就可以了:第一种: 代码: <iframe width="145" height="130" border="0" align="center" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no" src="" allowTransparency="true"></iframe> 效果预览: 说明:这种适合于在网页的边栏插入。但一个缺点是,上面的4个城市是既定的,无法改成别的。插入时,选好网页上的位置,直接将左栏的源代码全部拷进去就行了 第二种: 代码: <IFRAME ID='ifm2' WIDTH='189' HEIGHT='190' ALIGN='CENTER' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' SRC=''></IFRAME> 效果预览: 说明:这种 也适合于在网页的边栏插入。上面的城市可以自定,比如厦门可改成别的。定制的方法是修改我代码中标红的数字,从1开始代表“香港”开始,每个数字都代表一个城市,厦门是287,具体要哪个城市自己找一下罢。 第三种: 代码: <IFRAME ID='ifm2' WIDTH='260' HEIGHT='70' ALIGN='CENTER' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' src=""></iframe> 效果预览: 说明:这种适合于在网页的头栏插入。上面的城市可以自定,比如 石家庄可改成别的。定制的方法是修改我代码中标红的数字。具体各个城市对照的id表可在此下载:城市名称及ID对照表(请右键点击—>另存为)。 第四种: 代码: <iframe width="469" height="218" border="0" align="center" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no" src="厦门" allowTransparency="true"></iframe> 效果预览: 说明:这种适合于在网页的正栏插入。上面的城市可以自定,比如厦门可改成别的。定制的方法是修改我代码中标红的 名称。这里比较简单,直接用汉字改就行了。比如是福州的,你就直接把“厦门”改成福州就行。 第五种: 代码: <IFRAME ID='ifm1' WIDTH='405' HEIGHT='332' ALIGN='center' MARGINWIDTH='0' MARGINHEIGHT='0' HSPACE='0' VSPACE='0' FRAMEBORDER='0' SCROLLING='NO' SRC=""></IFRAME> 效果预览: 第六种: 代码: <iframe width=160 height=230 frameborder=0 scrolling=NO src=南昌></iframe> 效果预览: 说明:这种适合于在网页的边栏插入。上面的城市可以自定,比如南昌可改成别的。定制的方法是修改我代码中标红的名称。这里比较简单,直接用汉字改就行了。比如是福州的,你就直接把“厦门”改成福州就行
很不错哦,你可以试下
qgulqjbsvk62041435102011-10-12 9:09:45
❿ 怎么用php抓取天气预报先说下思路,再举个例子。
我昨天刚做了个,本来打算自己用,你既然问,就分享了吧!
PS:因为我是菏泽人,所以,如果你什么都不填,就显示菏泽天气。
如果想显示别的,直接输入就行,比如"香港",然后提交就OK了
http://young.boustead.e.cn/data/shunzi/tq.php
不知道是否合乎楼主的意愿(不用JS)