网页采集+PDO入库
2016-10-15 16:17
260 查看
<?php
/**
* 采集soho网页新闻
*/
// header头
header("content-type:text/html;charset=utf8");
// 网站地址
$url="http://sports.sohu.com/nba.shtml";
// 获取网站内容
$str=file_get_contents($url);
// 转码
$str=iconv('GBK','utf-8',$str);
// pdo连接数据库
$pdo=new PDO("mysql:host=localhost;dbname=caiji" ,"root","root");
$pdo->exec("set names utf8");
// 获取网页内容`
$reg='#<div style="display: block; height: 110px; overflow: hidden;" class="l">.*<div class="blank10"></div>#isU';
preg_match($reg, $str,$arr);
// 分步正则获取图片、标题、详情
$reg2='#<img alt="NBA" src="(.*)" border="0" height="100" width="100"></a></div>#isU';
$reg3='#<h4><a onFocus="undefined" title="" href=".*" target="_blank">(.*)</a></h4>#isU';
$reg4='#<p>(.*)<a onFocus="undefined" href=".*" target="_blank">.*<div class="r"></div></div>#isU';
// var_dump($arr);
preg_match_all($reg2,$arr[0],$image);
preg_match_all($reg3,$arr[0],$title);
preg_match_all($reg4,$arr[0],$content);
// 添加到同一个数组
$data=array();
// 将图片保存到本地
foreach ($image[1] as $key => $value) {
// 截取后缀
$exm=substr($value,strrpos($value,'.'));
// 拼写路径
$image_name='./image/'.time().rand(1000,9999).$exm;
// var_dump($image_name);
// 获取图片内容
$value=file_get_contents($value);
file_put_contents($image_name,$value);
$data[$key]['image']=$image_name;
}
// foreach ($image[1] as $key => $value) {
// $data[$key]['image']=$value;
// }
foreach ($title[1] as $key => $value) {
$data[$key]['title']=$value;
}
foreach ($content[1] as $key => $value) {
$data[$key]['content']=$value;
}
// 循环入库
foreach ($data as $key => $value) {
$sql="insert into sohu (image,title,content) values('".$value['image']."','".$value['title']."','".$value['content']."')";
$pdo->exec($sql);
}
var_dump($data);
?>
/**
* 采集soho网页新闻
*/
// header头
header("content-type:text/html;charset=utf8");
// 网站地址
$url="http://sports.sohu.com/nba.shtml";
// 获取网站内容
$str=file_get_contents($url);
// 转码
$str=iconv('GBK','utf-8',$str);
// pdo连接数据库
$pdo=new PDO("mysql:host=localhost;dbname=caiji" ,"root","root");
$pdo->exec("set names utf8");
// 获取网页内容`
$reg='#<div style="display: block; height: 110px; overflow: hidden;" class="l">.*<div class="blank10"></div>#isU';
preg_match($reg, $str,$arr);
// 分步正则获取图片、标题、详情
$reg2='#<img alt="NBA" src="(.*)" border="0" height="100" width="100"></a></div>#isU';
$reg3='#<h4><a onFocus="undefined" title="" href=".*" target="_blank">(.*)</a></h4>#isU';
$reg4='#<p>(.*)<a onFocus="undefined" href=".*" target="_blank">.*<div class="r"></div></div>#isU';
// var_dump($arr);
preg_match_all($reg2,$arr[0],$image);
preg_match_all($reg3,$arr[0],$title);
preg_match_all($reg4,$arr[0],$content);
// 添加到同一个数组
$data=array();
// 将图片保存到本地
foreach ($image[1] as $key => $value) {
// 截取后缀
$exm=substr($value,strrpos($value,'.'));
// 拼写路径
$image_name='./image/'.time().rand(1000,9999).$exm;
// var_dump($image_name);
// 获取图片内容
$value=file_get_contents($value);
file_put_contents($image_name,$value);
$data[$key]['image']=$image_name;
}
// foreach ($image[1] as $key => $value) {
// $data[$key]['image']=$value;
// }
foreach ($title[1] as $key => $value) {
$data[$key]['title']=$value;
}
foreach ($content[1] as $key => $value) {
$data[$key]['content']=$value;
}
// 循环入库
foreach ($data as $key => $value) {
$sql="insert into sohu (image,title,content) values('".$value['image']."','".$value['title']."','".$value['content']."')";
$pdo->exec($sql);
}
var_dump($data);
?>
相关文章推荐
- 采集网页内容,pdo入库,定时采集
- 网页采集+pdo入库
- ASP网站数据采集程序制作:一个采集入库生成本地文件的几个FUCTION(可用来生成HTML静态网页)
- 采集页面,PDO添加入库,email发送,列表展示生成静态页面
- ASP网站数据采集程序制作:一个采集入库生成本地文件的几个FUCTION(可用来生成HTML静态网页)
- ASP网站数据采集程序制作:一个采集入库生成本地文件的几个FUCTION(可用来生成HTML静态网页)
- 周考 信息采集 使用PDO添加入库 展示 及分页效果
- Java实现网页数据采集
- ASP采集入库生成本地文件的几个FUCTION
- 浅谈自动采集程序及入库
- ASP小偷自动采集入库方法
- 采集入库
- 使用PHP提供的CURL模块采集任意网页 已经封装一个类超级好用 请拿走
- Java网页数据采集器[上篇-数据采集]
- API例子:用Python驱动Firefox采集网页数据
- 使用phpQuery轻松采集网页内容
- php 实现信息采集(网页内容抓取)程序代码
- Java网页数据采集器实例教程[上篇-数据采集]
- 工作记录:html网页采集利器:simple_html_dom,phpQuery
- PHP采集网页图片并保存至本地