前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >php获取百度贴吧指定帖子楼层数

php获取百度贴吧指定帖子楼层数

作者头像
夏时
发布2018-06-26 16:47:55
7560
发布2018-06-26 16:47:55
举报
文章被收录于专栏:夏时夏时

最近看到了一个奖品很诱人的抢楼贴,于是萌生了做一个贴吧抢楼工具的想法。要达到抢楼的目的,第一步当然是获取当前帖子的楼层数,这样才能精准抢楼,在网上找了一圈,没找到相关代码,于是自己用PHP写了一个,试了一下效果还不错,因此果断分享出来!

  1. /********************************
  2. 获取贴吧指定帖子回复量的函数
  3. 编  写:mengkun
  4. 函数名:getFCount
  5. 输  入:帖子的tid
  6. 输  出:帖子的楼层数(最大支持3784)
  7. ********************************/
  8. function getFCount($tid)
  9. {
  10. $url ='http://tieba.baidu.com/mo/m?kz='. $tid .'&last=1'; //url地址
  11. $ch = curl_init($url); //初始化
  12. $header = array ("Content-Type: application/x-www-form-urlencoded");
  13.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  14.     curl_setopt($ch, CURLOPT_REFERER, "http://tieba.baidu.com/mo/");   //伪造来源网址
  15.     curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
  16. $output = curl_exec($ch);//执行并获取HTML文档内容
  17.     curl_close($ch);//释放curl句柄
  18. //echo $output;   //调试使用
  19. //echo "<a href='http://tieba.baidu.com/p/".$tid."?pn=9999999' target='_blank'>点击查看原帖效验结果</a><br>";   //调试使用
  20. if(preg_match('/<div>    您要浏览的贴子不存在<br\/>/',$output)) //被删除的帖子
  21.     {
  22. return 0;
  23.     }
  24. else
  25.     {
  26.         preg_match('/<div class="i">(\d*)楼\./isU',$output,$acceptNo);
  27. return $acceptNo[1];
  28.     }
  29. }
  30. //使用示例:
  31. echo "帖子4836155247当前的楼层数为:".getFCount(4836155247);

我在帝吧随意找了一篇帖子,这篇帖子的tid为 4836155247 ,经过测试,完美无误

php获取百度贴吧指定帖子楼层数
php获取百度贴吧指定帖子楼层数

写在后面:

经过仔细测试,发现如果帖子的楼层数大于3784,会失效;

如果帖子最后几楼被抽了,也无法准确获取。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 写在后面:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档