使用Snoopy模拟登录定时发帖实例

字号+ 编辑: 国内TP粉 修订: 德玛西亚 来源: ThinkPHP 2023-09-09 我要说两句(0)

使用开源的snoopy采集类实现机器人定时发帖的代码案例。非常实用, 希望小伙伴们能喜欢。本篇为bug修正版本。

废话不多说, 先上代码

header("Content-Type:text/html;charset=utf-8");
// 设置浏览器关闭也运行
ignore_user_abort();
// 设置超时时间
set_time_limit(60*15);
// include('Snoopy.class.php');
$snoopy = new Snoopy;
###############################################
// 模拟登录发帖实例 
// 登录地址
$submit_url = "########";
 
// 登录参数
$submit_vars["user_email"]      = "123@123.com";
$submit_vars["password"]        = "123456";
$submit_vars["issave"]          = 1;
$submit_vars["redirect"]        = "";
$submit_vars["login"]           = "用户登录";
 
// 用submit方法来实现登录
$snoopy->submit($submit_url, $submit_vars); 
// var_dump($snoopy->results);
//要抓取的列表页
$sourceURL = "#########";  
// 获得网页的链接
$snoopy->fetchlinks($sourceURL);  
// 得到网页链接的结果
$a      = $snoopy->results;  
// 指定获取的url正则
$p      = '/mod=goods&do=display&id=/'; 
// 收集指定采集url地址
$new    = preg_grep($p,$a); 
// 过滤重复url
$new    = array_unique($new);
 
$i = 1;
// 循环定时发帖
foreach($new as $v) {
    // P($v);
    // 发帖参数
    $submit_for["score"]          = 4;
    $submit_for["contents"]       = "测试模拟发帖" . $i . '时间: ' . date('Y-m-d H:i:s', time());
    $submit_for["action"]         = 'ac_comm';
     
    // 用submit方法来实现发帖
    $snoopy->submit($v, $submit_for); 
    
    // 定时发帖
    sleep(30);
    $i++;
}
 
P('发帖完成');


阅完此文,您的感想如何?
  • 有用

    1

  • 没用

    0

  • 开心

    0

  • 愤怒

    0

  • 可怜

    0

1.如文章侵犯了您的版权,请发邮件通知本站,该文章将在24小时内删除;
2.本站标注原创的文章,转发时烦请注明来源;
3.Q群: 2702237 13835667

相关课文
  • mac开发接入微信公众号接口返回报错 cURL error 56: SSLRead() return error -9806

  • PHP的换行符是什么

  • pecl安装程序时报错Array and string offset access syntax with curly braces is no longer supported

  • 由于商家传入的H5交易参数有误,该笔交易暂时无法完成,请联系商家解决

我要说说
网上嘉宾点评