• 欢迎访问乐趣公园网站,WordPress信息,WordPress教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入乐趣公园 QQ群
  • Git主题现已支持PHP7版本,速度应该会提高不少,不过云落的网站本来就很快了,所以感觉不是太明显
  • 最新版Git主题已支持说说碎语功能,可像添加文章一样直接添加说说,新建说说页面即可,最后重新保存固定连接,演示地址
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏乐趣公园吧
  • 云落的淘宝店铺已经开张了哦,传送门:https://kimipet.taobao.com

百度贴吧自动加精置顶

折腾不止 云落 4年前 (2014-10-20) 749次浏览 已收录 4个评论
文章目录[隐藏]

基于关键词给贴吧帖子进行自动加精置顶

image

前言

前几天 giuem 童鞋给我们做了一个贴吧云删帖的东西,我进行一个小小的修改,让他能贴吧自动加精置顶,虽然还不完善,但是勉强能用。

代码

<?php

/*

* 作者:Giuem

* 博客地址:http://www.giuem.com/

* 转载请保留版权!

*/

header("Content-type: text/html; charset=utf-8");

$bduss = 'XVFSXl-Ti1KazJ6ajFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADZBFlQ2QRZUY';//吧务的 BDUSS

$kw = '无法诉说的吟荡';//目标贴吧

$keywords = '我爱吟荡|这个吧默默地 9 级了';//关键词 格式 关键词 1|关键词 2|关键词 3|关键词 4|关键词 5|关键词 6......

/***********************/

$forum = get_forum();

$fid = $forum['forum']['id'];

foreach($forum['thread_list'] as $thread){

if(check_ad($thread['title'])){

if(del_thread($kw,$fid,$thread['tid'])) {echo "帖子加精:{$thread['tid']}成功<br />"; }else{ echo "帖子加精:{$thread['tid']}失败<br />";}

break ;

}elseif($thread['abstract']){

if(check_ad($thread['abstract'][0]['text'])){if(del_thread($kw,$fid,$thread['tid'])) {echo "删除帖子:{$thread['tid']}成功<br />"; }else{ echo "删除帖子:{$thread['tid']}失败<br />";}}

}

}

function get_forum(){

global $kw;

$data=array(

'_client_id=wappc_1396611108603_817',

'_client_type=2',

'_client_version=5.7.0',

'_phone_imei=642b43b58d21b7a5814e1fd41b08e2a6',

'from=tieba',

"kw={$kw}",

'pn=1',

'q_type=2',

'rn=30',

'with_group=1');

$data=implode('&', $data).'&sign='.md5(implode('', $data).'tiebaclient!!!');

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'http://c.tieba.baidu.com/c/f/frs/page');

curl_setopt($ch, CURLOPT_HTTPHEADER, array ('Content-Type: application/x-www-form-urlencoded'));

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);

curl_setopt($ch, CURLOPT_TIMEOUT, 30);

$re = json_decode(curl_exec($ch),true);

curl_close($ch);

return $re;

}

function get_tbs(){

global $bduss;

$re=json_decode(fetch('http://tieba.baidu.com/dc/common/tbs','BDUSS='.$bduss),true);

return $re['tbs'];

}

function fetch($url,$cookie=null,$postdata=null){

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,$url);

if (!is_null($postdata)) curl_setopt($ch, CURLOPT_POSTFIELDS,$postdata);

if (!is_null($cookie)) curl_setopt($ch, CURLOPT_COOKIE,$cookie);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_TIMEOUT, 20);

$re = curl_exec($ch);

curl_close($ch);

return $re;

}

function check_ad($content){

global $keywords;

$preg = '/'.addslashes($keywords).'/i';

$res = preg_match($preg,$content);

return $res;

}

function del_thread($kw,$fid,$tid){

global $bduss;

$data = 'commit_fr=pb&ie=utf-8&tbs='.get_tbs()."&kw={$kw}&fid={$fid}&tid={$tid}";

$re = json_decode(fetch('http://tieba.baidu.com/f/commit/thread/good/add','BDUSS='.$bduss,$data),true);

$re = json_decode(fetch('http://tieba.baidu.com/f/commit/thread/top/add','BDUSS='.$bduss,$data),true);

return $re['no']==0;

}

使用事项

因为代码只是粗略的添加一下,暂时只能匹配帖子标题,在我的设计里面是匹配帖子作者然后再匹配帖子标题关键词进行加精置顶操作的,所以暂时是不完善的

后语

PHP 小白显示看代码能看懂一部分,要自己写代码还是有很大的困难,主要是用来给小说贴吧加精置顶的


乐趣公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:百度贴吧自动加精置顶
喜欢 (13)
云落
关于作者:
无折腾,不生活,我是一个WordPress菜鸟,一个玩淘宝的卖家,欢迎你认识我,我是云落!
发表我的评论
取消评论
表情 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. stristr(‘所有的id写在这’,$thread['author']['name_show'])加在15行和18行的if中,用&连接你应该懂吧
    Giuem2014-10-31 13:42 回复 Windows 7 | Chrome 29.0.1547.57
    • 云落
      OK!啦啦啦
      云落2014-10-31 14:12 回复 Android 4.4.4 | WordPress客户端 android