php新闻列表采集入库,queryList插件,分页采雷锋网最新资讯,并入库到本地!

输入代码

/**

* 分页采集雷锋网最新资讯,入库到本地

* querylist 插件自己到晚上去下载,然后引入下面的文件即可

* @author :kevin

*/

set_time_limit(0);

require 'core/QueryList.class.php';

//todo 数据库配置

require 'config/config.php';

header("Content-type;text/html;charset=utf-8");

echo "

";

$reg = array(

'title' => array('.tit','text'),

'link' => array('.word a:eq(0)','href'),

'desc' => array('.des','text'),

'icon' => array('.img>a:eq(1) img','data-original'),

'icon_title' => array('.img a:eq(0)','text'),

'author_icon' => array('.aut img','src'),

'author_name' => array('.aut span','text'),

'create_time' => array('.time span:eq(1)','text'),

'comment_num' => array('.cmt>span','text'),

'create_date' => array('.time span:eq(0)','text','',function($content){

//用回调函数进一步过滤出日期

$arr = explode(' / ',$content);

//print_r($arr);

return $arr[0].'-'.$arr[1].'-'.$arr[2];

}),

);

$rang = '.wrap ul li';

$regDetails = array(

'content' => array('.lph-article-comView','html','-.lp-proCard',function($content){

return $content;

}),

);

for($page=6;$page<=100;$page++){

$URL = 'http://www.leiphone.com/page/'.$page.'#lph-pageList';

$result = QueryList::Query($URL,$reg,$rang,'','UTF-8');

$data = $result->jsonArr;

if($data){

foreach($data as $key => $val){

$detailsRes = QueryList::Query($val['link'],$regDetails,'','UTF-8');

$detailsData = $detailsRes->jsonArr;

// echo $detailsRes->getJSON();

// print_r($detailsData);

// die;

$table = "leiphone_list";

$sql = "insert into {$table} (`title`,`link`,`desc`,`icon`,`icon_desc`,`author_icon`,

`author_name`,`create_time`,`comment_num` ,`body`)values('".$val['title']."','".$val['link']."',

'".$val['desc']."','".$val['icon']."','".$val['icon_title']."','".$val['author_icon']."',

'".$val['author_name']."','".$val['create_date'].' '.$val['create_time']."','".$val['comment_num']."','".$detailsData[0]['content']."' )

";

if(!mysql_query($sql)){

echo $val['title']." insert Fail !!!



";

}

}

}else{

die(json_encode(array('msg'=>"抓取数据为空或数据抓取失败,网络请求超 时!")));

}

}

<?php class IP {      public static function generate($province = '')     {         $ip_address = self::_IPSegment($province);         $ip = self::_randomIP($ip_address['begin'], $ip_address['end']);         return $ip;     }     public static function update()     {         require 'QueryList.class.php';         $province = array(             'BJ', 'GD', 'SD', 'ZJ', 'JS', 'SH', 'LN', 'SC', 'HA',             'HB', 'FJ', 'HN', 'HE', 'CQ', 'SX', 'JX', 'SN', 'AH',             'HL', 'GX', 'JL', 'YN', 'TJ', 'NM', 'XJ', 'GS', 'GZ',             'HI', 'NX', 'QH', 'XZ'         );         $count = count($province);         $ip_segment = array();         for ($i = 0; $i < $count; $i ) {             // 采集IP地址段目标址             $url = 'http://ips.chacuo.net/view/s_' . $province[$i];             $ip_list = QueryList::Query($url, array('begin' => array('.v_l', 'text'), 'end' => array('.v_r', 'text')), '', 'UTF-8');             $ip_array = $ip_list->jsonArr;             $ip_segment[$province[$i]] = $ip_array;         }         $path = str_replace('\\', '/', __DIR__);         $file = $path . '/ip_segment.php';         $res = self::_write($file, $ip_segment);         if ($res) {             echo 'Update OK!';         }     }根据省份名(中文)随机生成IPV4地址$province为空则随机国内省份
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值