php 抓取天气情况 www.weather.com.cn

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 抓取天气情况 www.weather.com.cn相关的知识,希望对你有一定的参考价值。

<?php


print_r(getweather(101120501));


/**
 * Server 天气情况获取函数
 * @param unknown $city
 */
function getweather($city){
	$url = "http://www.weather.com.cn/weather1d/".$city.".shtml";
	$result = file_get_contents($url);
	$result = explode("<li class='dn on' data-dn='todayT'>",$result);
	$result = explode("<div class=\"m m2\" id=\"2_3d\">",$result[1]);
	$result = mb_convert_encoding($result[0],"GBK","UTF-8");
	$first = explode("<div class=\"slid\"></div>",$result);
	//print_r($first);exit;
	$w1 = get_we_info($first[0]);
	$w2 = get_we_info($first[1]);
	$week = mb_substr($w1[0],-2);
	$arr['w_week']  = $week;
	$arr['w_day1']  = trim($w1[1]);
	$arr['w_day2']  = trim($w2[1]);
	$arr['w_type1'] = trim($w1[2]);
	$arr['w_type2'] = trim($w2[2]);
	$arr['w_temperature1']= trim($w1[3]);
	$arr['w_temperature2']= trim($w2[3]);
	return $arr;	
}
/**
 * 每天的具体天气状况(今天 白天->今天 夜间)
 * @param unknown $info
 * @return string
 */
function get_we_info($info){
	$w_info=explode("</h1>",$info);
	$we_arr[0] = strip_tags($w_info[0]);
	$w_info=explode("</h2>",$w_info[1]);
	$we_arr[1] = strip_tags($w_info[0]);
	$w_info = explode("<p class=\"tem\">",$w_info[1]);
	$we_arr[2] = strip_tags($w_info[0]);
	$w_info=explode("<i>",$w_info[1]);
	//$w_info=explode("<p class=\"win\">",$w_info[1]);
	$we_arr[3]=strip_tags($w_info[0]);
	return $we_arr;
}



?>

以上是关于php 抓取天气情况 www.weather.com.cn的主要内容,如果未能解决你的问题,请参考以下文章

php抓取页面的几种方式

Python爬虫编程思想(156):使用Scrapy抓取天气预报数据

Python爬虫编程思想(156):使用Scrapy抓取天气预报数据

Python爬虫编程思想(156):使用Scrapy抓取天气预报数据

curl抓取网页内容php

python微信聊天机器人改进版,定时或触发抓取天气预报励志语录等,向好友推送