php爬虫采集商品,php实战开发网络爬虫,实现采集功能

php实现实时获取当天天气小工具

//获取天气预报网站的网页内容

$html = file_get_contents("http://www.weather.com.cn/weather1d/101210101.shtml");

//正则表达式

$reg = '#hour3data.+?\[".+?,.+?,(?.+?),(?.+?),#';

//如果匹配成功,就输出温度相关的信息

if(preg_match($reg, $html, $mat)){

echo "今天".$mat['tianqi'].",温度".$mat['wendu'];

}

从起点网采集指定的小说章节保存到txt文件

$url = "http://read.qidian.com/chapter/e3dzHPdshCDbhZU9AFSCzA2/JRRO4JeEqtFp4rPq4Fd4KQ2";

$html = file_get_contents($url);

$reg = '#

(?.+?)[\s\S]+?
(?[\s\S]*?)
#';

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 "1.jpg".$mat[2];

}

根据ip获取地址信息(作业)

用户输入一个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 = '#

[\s\S]+?(.+?)[\s\S]+?

#';

if(preg_match($regex, $html, $mat)){

echo $mat[1];

}

php获取最近7天天气预报信息(作业)

从起点采集一本指定的小说所有的章节内容,合并到一个txt文件。(作业)

提示:先采集列表的url,再循环采集每个章节的内容,追加到文件中。

//ini_set('max_execution_time','0');

$html = file_get_contents("http://book.qidian.com/info/1004608738");

$regex = '#

(.+?)[\s\S]+?#';

if(preg_match_all($regex, $html, $mats)){

foreach($mats[1] as $k => $v){

$html1 = file_get_contents("http:".$v);

$regex1 = '#

([\s\S]+?)
#';

//匹配内容

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";

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值