本文实例讲述了php采集中国代理服务器网的方法。分享给大家供大家参考。具体如下:
list = preg_replace('/\(\*\)/', $page, $url); return $this->list; } /* 采集代理内容 */ function get($page) { $this->get_list($page); $file = stripslashes(file_get_contents($this->list)); $zz = '/([0-9\.]+)document\.write\(:([\+a-z]+)\)[\w]+[\w\,]+/is'; preg_match_all($zz, $file, $temp); unset($temp[0]); $th = array('z', 'm', 'k', 'l', 'd', 'x', 'i', 'w', 'q', 'b'); $th2 = array(3, 4, 2, 9, 0, 5, 7, 6, 8, 1); foreach ($temp[2] as $k=>$v) { $v = preg_replace(/[\+]+/, '', $v); $s = str_replace($th, $th2, $v); $re .= $temp[1][$k] . ':' . $s . \r\n; } $this->save($re); return true; } /* 保存 */ function save($re) { return file_put_contents($this->save_path, $re, file_append); } /* 读取 */ function read() { return file_get_contents($this->save_path); }}// 初始化采集类$p = new proxy;$start = 1;$end = 10;// 控制if($_get['a'] == 'start') { echo '正在发送采集请求'; echo '';} elseif(isset($_get['p'])) { $i = $_get['p']++; if($i >= $end+1) { exit(''); } else { echo '正在请求列表 '. $i .' > '. $end; if($p->get($i)) { echo ''; } }} elseif($_get['a'] == 'end') { echo '采集完毕';} else { echo ' ';}?>
希望本文所述对大家的php程序设计有所帮助。