首页 > 作文

php 论坛采集程序 模拟登陆,抓取页面 实现代码

更新时间:2023-04-06 14:20:08 阅读: 评论:0

复制代码 代码如下:

<?php

// 吴燕军

// 2009-06-27

// 采集程序php

t_time_limit(0);

//cookie保存目录

$cookie_jar = ‘/tmp/cookie.tmp’;

/*函数————————————————————————————————————*/

//模拟请求数据

function request($url,$postfields,$cookie_jar,$referer){

$ch = curl_init();

$options = array(curlopt_url => $url,

curlopt_header => 0,

curlopt_nobody => 0,

curlopt_port => 80,

curlopt_post => 1,

curlopt_postfields => $postfields,

curlopt_returntransfer => 1,

curlopt_followlocation => 1,

curlopt_cookiejar => $cookie_jar,

curlopt_cookiefile => $cookie_jar,

curlopt_referer => $referer

);

curl_topt_array($ch, $options);

$code = curl_exec($ch);

curl_clo($ch);

return $code;

}

//获取帖子列表

function getthreadslist($code){

preg_match_all(‘/ <!–[.|\r|\n]*? <a href=\”viewthread.php\?tid=(\d+)/’,$code,$threads);

return $threads[1];

}

//判断该帖子是否存在

function ix托福报名费多少钱its($code){

preg_match(‘/ <p>指定的主题不存在或已被删除或正在被审核,请返回。 <\/p>/’,$code,$error);

return ist($error[0])?fal:true;

}

//获取帖子标题

function gettitle($code){

萧萧的意思preg_match(‘/ <h1>[^ <\/h1>]*/’,$code,$title_tmp);

$title = $title_tmp[0];

return $title;

}

//获取帖子作者:

function getauthor($code){

preg_match(‘/ <a href=\”space.php\?uid=\d+\” target=\”_blank\” id=\”urinfo\d+\” onmouover=\”showmenu\(this\.id\)\”>.+/’,$code,$author_tmp);

$author = strip_tags($author_tmp[0]);

return $author;

}

//获取楼主发表的内容

function getcontents($code){

preg_match(‘/ <div id=\”postmessage_\d+\” class=\”t_msgfont\”>(.|\r|\n)*? <\/div>/’,$code,$contents_tmp);

$contents = preg_replace(‘/images\//’,’http://bbs.war3.cn/images/’,$contents_tmp[0]);

return $contents;

}

//打印帖子标题

function printtitle($title){

echo ” <strong> <h2>帖子标题: </h2> </strong>”,strip_tags($title),” <br/> <br/>”;

}

//输出帖子作者

function printauthor($author){

echo ” <strong> <h2>帖子作者: </h2> </strong>”,strip_tags($author),” <br/> <br/>”;

}

//打印帖子内容

function printcontents($contents鲁人徙越文言文翻译){

echo ” <strong> <h2>作者发表的内容: </h2>”,$contents,” </strong> <br/>”;

}

//错误

function printerror(){

echo ” <i>该帖子不存在! </i>”;

}

/*函数列表end—————————————————————————————————*/

/*登录论坛 begin*/

$url = ‘http://bbs.war3.cn/logging.php?action=login’;

$postfields=’loginfield=urname&urname=1nject10n& password=xxxxxx&questionid=0&cookietime=315360000& referer=http://bbs.war3.cn/&loginsubmit=提交’;

request($url,$postfields,$cookie_jar,”);

unt($postfields,$url);

/*登录论坛 end*/

/*获取帖子列表(位于第一页的帖子) begin*/

$url = ‘http://bbs.war3.cn/forumdisplay.php?fid=57’;

$code = request($url,”,$cookie_jar,”);

$threadslist = getthreadslist($code);

/*获取帖子列表 end*/

//帖子序列

$rows = 0;

/*循环抓取所有帖子源代码 begin*/

foreach($threadslist as $list){

$url = “http://bbs.war3.cn/viewthread.php?tid=$list”;

if(ixits($code)){

$code = request($url,”,$cookie_jar,”);

$color = $rows%2==0?’#00ccff’:’#ffff33′;

echo ” <div style=’background-color:$color’>”;

echo ” <h1>第”,($rows+1),”贴: </h1> <br/>”;

$author = getauthor($code);

printauthor($author);

$title = gettitle($code);

printtitle($tit主题婚礼策划方案le);

$contents = getcontents($code);

printcontents($contents);

echo ” </div>”;

$rows++;

}

el

printerror();

echo “————————————————————————&#创优争先8212;————– <br/> <br/>”;

}

/*抓取源代码 end*/

?>

本文发布于:2023-04-06 14:19:23,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/816ca076925cfe51d426007e134486ab.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:php 论坛采集程序 模拟登陆,抓取页面 实现代码.doc

本文 PDF 下载地址:php 论坛采集程序 模拟登陆,抓取页面 实现代码.pdf

下一篇:返回列表
标签:帖子   作者   帖子列表   不存在
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图