php實現(xiàn)實時獲取當天天氣小工具
//獲取天氣預報網站的網頁內容
$html = file_get_contents("http://www.weather.com.cn/weather1d/101210101.shtml");
//正則表達式
$reg = '#hour3data.+?\[".+?,.+?,(?<tianqi>.+?),(?<wendu>.+?),#';
//如果匹配成功锈至,就輸出溫度相關的信息
if(preg_match($reg, $html, $mat)){
? ? echo "今天".$mat['tianqi'].",溫度".$mat['wendu'];
}
從起點網采集指定的小說章節(jié)保存到txt文件
$url = "http://read.qidian.com/chapter/e3dzHPdshCDbhZU9AFSCzA2/JRRO4JeEqtFp4rPq4Fd4KQ2";
$html = file_get_contents($url);
$reg = '#<title>(?<title>.+?)</title>[\s\S]+?<div class="read-content j_readContent">(?<content>[\s\S]*?)</div>#';
if(preg_match($reg, $html, $mat)){
? ? //print_r($mat);
? ? $mat['content'] = preg_replace("#<.*?>#","\r\n",$mat['content']);
? ? echo $mat['title']."\n\n\n\n".$mat['content'];
? ? file_put_contents($mat['title'].".txt",$mat['content']);
}
根據qq號獲取昵稱和頭像
要求:根據qq賬號,在網頁中顯示出對應的昵稱和用戶頭像闻鉴。
提示:通過這個地址可以獲取到相關信息 http://r.pengyou.com/fcg-bin/cgi_get_portrait.fcg?uins=841116165
提示:此處顯示圖片有小坑炊昆。搜索關鍵詞 “防盜鏈”
$url = "http://r.pengyou.com/fcg-bin/cgi_get_portrait.fcg?uins=841116165";
$html = file_get_contents($url);
$reg = '#.+?\["(.+?)",.+?,.+?,.+?,.+?,.+?,"(.+?)"#';
if(preg_match($reg, $html, $mat)){
? ? //由于防盜鏈,無法直接使用騰訊的頭像鏈接贱田,所以要先下載到本地
? ? file_put_contents("1.jpg",file_get_contents($mat[1]));
? ? echo "<img src='./1.jpg' />".$mat[2];
}
根據ip獲取地址信息(作業(yè))
用戶輸入一個ip地址缅茉,顯示這個ip的地理位置信息。
提示:通過后面的地址即可獲取到地址信息 http://ip.chinaz.com/36.24.128.67
答案:
$ip = "36.84.128.67";
$html = file_get_contents("http://ip.chinaz.com/".$ip);
$regex = '#<p class="WhwtdWrap bor-b1s col-gray03">[\s\S]+?<span class="Whwtdhalf w50-0">(.+?)</span>[\s\S]+?</p>#';
if(preg_match($regex, $html, $mat)){
? ? echo $mat[1];
}
php獲取最近7天天氣預報信息(作業(yè))
從起點采集一本指定的小說所有的章節(jié)內容男摧,合并到一個txt文件蔬墩。(作業(yè))
提示:先采集列表的url译打,再循環(huán)采集每個章節(jié)的內容,追加到文件中拇颅。
//ini_set('max_execution_time','0');
$html = file_get_contents("http://book.qidian.com/info/1004608738");
$regex = '#<li data-rid="\d+?"><a href="(.+?)"[\s\S]+?>(.+?)</a>[\s\S]+?</li>#';
if(preg_match_all($regex, $html, $mats)){
? ? foreach($mats[1] as $k => $v){
? ? ? ? $html1 = file_get_contents("http:".$v);
? ? ? ? $regex1 = '#<div class="read-content j_readContent">([\s\S]+?)</div>#';
? ? ? ? //匹配內容
? ? ? ? if(preg_match($regex1, $html1, $mat)){
? ? ? ? ? ? $mat[1] = preg_replace('#<.+?>|\s+?#', "",$mat[1]);
? ? ? ? ? ? $content = "\r\n".$mats[2][$k]."\r\n".$mat[1];
? ? ? ? ? ? file_put_contents("1.txt", $content, FILE_APPEND);
? ? ? ? } else {
? ? ? ? ? ? echo "內容沒有匹配成功";
? ? ? ? }
? ? ? ? echo $mats[2][$k]."\n";
? ? }
}