|
本帖最后由 cj009 于 2011-8-10 17:12 编辑
要实现多页面采集内容,多页面需要post数据到resume-save.php,要采集的内容就在save页上。这是修改的插件,哪里还要改呢 ,请高手指点下。
如给个完整的代码更感谢。
if($LabelArray['Html'])
{
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$URL = 'http://resume.baicai.com/resume-save.php'; // 需要POST到保存页面
//下面这段是要POST提交的数据
$post_data['resumeCode'] =substr($LabelUrl,30,14); // 从URL获取简历编号
$post_data['exportTypeD'] ='2'; // 简历保存类型为html
$referrer=$LabelUrl; // 当前采集页面的URL地址。
$URL_Info=parse_url($URL);
foreach ($post_data as $key=>$value)
{
$values[]="$key=".urlencode($value);
}
$data_string=implode("&",$values);//提交的数据格式是 a=1&b=2
// Find out which port is needed - if not given use standard (=80)
if (!isset($URL_Info["port"])) {
$URL_Info["port"]=80;
// building POST-request:
//一般做网站用form提交数据后,之后的操作就不用我们不管了,
//这里就是在模拟POST操作的HTTP头,具体的可以去查HTTP协议的资料,并不复杂
$request.="POST ".$URL." HTTP/1.1\n"; //POST 到保存简历页面
$request.="Host: resume.baicai.com\n";
$request.="User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1\n";
$request.="Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\n";
$request.="Accept-Language: zh-cn,zh;q=0.5\n";
$request.="Accept-Encoding: gzip, deflate\n";
$request.="Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7\n";
$request.="Keep-Alive: 115\n";
$request.="Connection: keep-alive\n"; //以上头切在抓取数据
$request.="Referer:". $LabelUrl."\n"; //Referer 当前采集地址
$request.="Cookie:".$LabelCookie."\n"; //对应采集的Cookie。
$request.="Content-type: application/x-www-form-urlencoded\n";
$request.="Content-length: ".strlen($data_string)."\n";
// $request.="Connection: close\n";
$request.="\n";
$request.=$data_string."\n"; // POST 的数据
//exit;
}
//fsockopen的用法就这样子了,不做多说明
$fp = fsockopen($URL_Info["host"], $URL_Info["port"]);
fputs($fp, $request);//把HTTP头发送出去
while(!feof($fp)) {
//提交后返回的数据
$LabelArray['Html'] .= fgets($fp, 1024);
}
fclose($fp);
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
} |
|