相关文章推荐
干练的火柴  ·  vscode python ...·  1 年前    · 
飞翔的皮带  ·  R语言ggplot2 图例缩小 ...·  1 年前    · 
闷骚的木耳  ·  深入理解 ...·  1 年前    · 

string
function getn($EVENTARGUMENT = "", $VIEWSTATE = "", $EVENTVALIDATION = "", $EVENTTARGET = "pager"){
$args = array();
if($EVENTARGUMENT){
$args = array(
'__EVENTTARGET'=>$EVENTTARGET,
'__EVENTARGUMENT'=>$EVENTARGUMENT,
'__VIEWSTATE'=>$VIEWSTATE,
'__EVENTVALIDATION'=>$EVENTVALIDATION,
'__VIEWSTATEENCRYPTED'=>'',
'search$txtFundName='=>'',
'search$txtFundManger'=>'',
'search$ddlFoundationDateOperater'=>'1',
'search$txtFoundationDate'=>'',
'search$dltFundType$ctl01$chkFundType'=>'on',
'search$dltFundType$ctl01$chklFundChildType$0'=>'on',
'search$dltFundType$ctl01$chklFundChildType$1'=>'on',
'search$dltFundType$ctl01$chklFundChildType$2'=>'on',
'search$dltFundType$ctl01$chklFundChildType$3'=>'on',
'search$dltFundType$ctl01$chklFundChildType$4'=>'on',
'search$chklFundStatus$0'=>'on',
'search$ddlFundOrg'=>'0',
'search$txtFundOrgName'=>'',
'search$ddlStatisticDateOperater'=>'1',
'search$txtStatisticDate'=>'',
'search$radlStatisticMode'=>'1'
$user_agent = "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.79 Safari/535.11";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://???/default.aspx');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 设为TRUE让结果不要直接输出
curl_setopt($ch, CURLOPT_VERBOSE, TRUE);
curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
curl_setopt($ch, CURLOPT_FAILONERROR, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLINFO_HEADER_OUT, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language:zh-CN,zh;q=0.8',
'Connection: Keep-Alive',
'Cache-Control:max-age=0',
'Referer:http://???/default.aspx',
'Expect:'
curl_setopt($ch, CURLOPT_POST, true); //启用POST提交
curl_setopt($ch, CURLOPT_POSTFIELDS, $args); //设置POST提交的字符串
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);//HTTP请求User-Agent:头
$document = curl_exec($ch); //执行预定义的CURL
return $document;
QQ群:223494678
函数:根据模拟post所得的页面信息,提取所需post的数据和分页,最后分解需要的html
string
function getHtml(){
global $html;
$first = getn();
preg_match('/<font color="black"><b>(\d+?)<\/b><\/font> 页<\/span>/is', $first, $matches);
$total = $matches[1];
preg_match('/<table id="dltData".+?<!-- AspNetPager/is', $first, $matches);
$html .= str_replace('<!-- AspNetPager', '', $matches[0]);
$VIEWSTATE = "";
$EVENTVALIDATION = "";
preg_match('/<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"/is', $first, $matches);
$VIEWSTATE = $matches[1];
preg_match('/<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="(.+?)"/is', $first, $matches);
$EVENTVALIDATION = $matches[1];
for($i = 2; $i <= $total; $i++){
sleep(1);
$EVENTARGUMENT = $i;
$result = getn($EVENTARGUMENT, $VIEWSTATE, $EVENTVALIDATION);
preg_match('/<table id="dltData".+?<!-- AspNetPager/is', $result, $matches);
$html .= str_replace('<!-- AspNetPager', '', $matches[0]);
$VIEWSTATE = "";
$EVENTVALIDATION = "";
preg_match('/<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"/is', $result, $matches);
$VIEWSTATE = $matches[1];
preg_match('/<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="(.+?)"/is', $result, $matches);
$EVENTVALIDATION = $matches[1];
return $html;

转自:http://www.cnblogs.com/see7di/p/3428354.html

/**    QQ群:223494678    函数:模拟post得到所有分页的页面信息    参数:        string $EVENTARGUMENT        string $VIEWSTATE        string $EVENTVALIDATION        string $EVENTTARGET    返回:        stri $ch = curl _init(); curl _setopt($ch, CURL OPT_URL, $url); curl _setopt($ch, CURL OPT_HEADER, 0); curl _setopt($ch, CURL OPT_RETURNTRANSFER, true); curl _setopt($ch, CURL OPT_COOKIEJAR, $
对于做过 数据 采集 的人来说, cURL 一定不会陌生。虽然在 PHP 中有file_get_contents函数可以获取远程链接的 数据 ,但是它的可控制性太差了,对于各种复杂情况的 采集 情景,file_get_contents显得有点无能为力。因此,本文将为你介绍 采集 神器 cURL 使用 。 火狐浏览器(FireFox) + Firebug “工欲善其事,必先利其器。” 在分析案例之前,先让我们学习一下如何利...
火车 采集 器支持 php 插件对 数据 进行处理。 php 插件的原理是通过调用命令行的 php .exe,对 数据 进行处理。 火车头软件的 php 目录为 System\ PHP 采集 器默认的 php 环境可能会无法满足用户的需要。这时, 您可以更换您自己的 php 环境。需要注意的是 php 的工作目录是 System\ PHP ,您可以直接将自己的 php 环境 复制过来。注意的是该目录下的interface.ph