KeyFC欢迎致辞,点击播放
资源、介绍、历史、Q群等新人必读
KeyFC 社区总索引
如果你找到这个笔记本,请把它邮寄给我们的回忆
KeyFC 漂流瓶传递活动 Since 2011
 

【版杀自动化】KeyFC版杀自动化工具

[ 1285 查看 / 3 回复 ]

Github网址(国内估计需要梯子)

https://github.com/boluobread/KeyFC-Forum-Mafia-Automaition.git

紧跟时代步伐,版杀也要自动化。
感谢坛友 24K卡布奇诺提供原始代码,目前,此代码可实现半自动结票。(筛选出特定时间段所有带vote指令的帖子)
稍加改动后应该可以实现无限制的【只看该用户】功能。(目前论坛自带的此功能只能显示有限的楼层)


准备:
  • 安装Python
  • 使用命令行运行以下命令,安装需要的库:
pip install requests
pip install beautifulsoup4


运行代码:
  • 下载vote.py,用 Python 自带的 IDLE 编辑器打开,根据需要改最后一行。
  • 保存运行,在同一个文件夹下就会有输出的文件了,像这样:
  •     vote-69988(53-60).txt

结果示例:
Key_Player(2024-02-2010:08)> 麻了始终还是要sa比我先走一步vote:sakyas
sakyas(2024-02-2010:25)> 麻了,决定把我宝贵的一票投给kp##vote kp
atamaitai(2024-02-2010:42)> vote:sakyas彼美鱼,待版杀结束之时,吾必生啖汝肉!!!!
amlut(2024-02-2010:47)> 草,原来欧尼酱你真不是啊,我看不懂了,有老六vote:sakyas
列克星敦太太(2024-02-2011:51)> 什么鬼啦www##vote:sakyas                    嘎哦,投票了~
来自宇宙的乱码兄(2024-02-2013:44)> vote:sakayas                投个票先
歐逆醬(2024-02-2014:35)> 三个字 春物 猜一下是不是城廻巡?##vote:sakyas
南風~(2024-02-2020:38)> vote:sakyas紫薯布丁紫薯布丁紫薯布丁
boluobread(2024-02-2113:42)> 汝秋因特殊原因无法发帖,由我代为投票vote:sakyas
amlut(2024-02-2118:46)> 考虑到真有这个可能,还是我来改票试试unvote:sakyasvote:乱码
amlut(2024-02-2118:48)> 我去,原来kp已经是第二个了,那我无能为力了unvote:乱码vote:sakyassa会不会溺死啊@GM

国内上github需要梯子,Vote.py在这里直接贴上

百度网盘也放一个

接:https://pan.baidu.com/s/1vrPCorPQ1D63NXvP_7cvCw
提取:qsqu





  1. import requests

  2. from bs4 import BeautifulSoup



  3. def contain_vote(text):

  4.     s=''

  5.     for char in text:

  6.         if char.isalpha():

  7.             s+=char.lower() #小写

  8.         else:

  9.             s+=char

  10.     return 'vote' in s

  11.    



  12. def get_url(url): #获取一页讨论帖, url:网址

  13.     response = requests.get(url)

  14.     soup = BeautifulSoup(response.text, 'html.parser')



  15.     poster=[x.text for x in soup.select('cite>span')] #发帖人

  16.     post_time=[x.text.strip() for x in soup.select('.postinfo>em:nth-child(2)')] #发帖时间

  17.     content=[x.text.strip() for x in soup.select('.t_msgfont')] #帖子内容文本



  18.     s=''

  19.     for i in range(len(poster)):

  20.         if contain_vote(content[i]):

  21.             s+=f"{poster[i]}({post_time[i]})> {content[i]}\n\n"

  22.     return s



  23. def get_topic(topic,start,end):

  24.     #获取多页讨论帖, topic:讨论帖编号, start:开始页数, end:结束页数   

  25.     output=''

  26.     for i in range(start,end+1):

  27.         url=f'https://keyfc.com/bbs/showtopic-{topic}-{i}.aspx'

  28.         output+=get_url(url)

  29.         print(url+'获取完成')



  30.     #将文本写入txt文件

  31.     file=open(f'vote-{topic}({start}-{end}).txt','w',encoding='utf-8')

  32.     file.write(output)

  33.     file.close()



  34. if __name__=='__main__':

  35.     '''

  36.     示例:获取有投票的讨论帖

  37.     从https://keyfc.com/bbs/showtopic-69988-28.aspx

  38.     到https://keyfc.com/bbs/showtopic-69988-42.aspx

  39.     '''

  40.     get_topic(69988,53,60)

复制代码
最后编辑boluobread 最后编辑于 2024-02-23 12:18:10
1

评分次数

    分享 转发

    優しさには いつも感謝してる だから強くなりたい(I'm on the way) 進むために敵も味方も歓迎じゃん    
      ——《again》 YUI
    TOP

    太强了 这个自动指令成功让论坛又停服了两天 (:>)| ̄|_哈哈哈
    1

    评分次数

      一直以来感谢你的爱(声),川上とも子小姐,谢谢

      KANON 完播 17 周年 & AIR 开播 19 周年纪念 & CLANNAD 发售 20 周年纪念 ^_^ 啦 ~ !  !  !

      2024 ^_^ 观铃 *^_^* 幸福快乐 *^_^* 啦 ~
      V ~ !      !      !





      —— 倒数计时 ——

      鼓起勇气,努力加油 ,全力以赴 ,迈步前行 ,无论何时 ,你都一定能去成为你所喜欢的你哟 ~ !

      结束宿命之轮的命运之‘圆’(羁绊) 传承爱与希望 实现梦想 崭新未来的开始啦 ~
      TOP

      太强了,支持关注一波,难得在kfc看到代码(划)(
      冷热交加.jpg
      中考结束了,高考加油!
      TOP

       

      应该只是巧合……


      https://keyfc.com:443/bbs/images/common/back.gif





      虽然不知道是不是巧合 ,但我见证了这次停服的分界线 ,我在那天前一秒看到了你的这个帖子 ,兴趣满满地点进来看看 ,然后一关掉帖子准备点出去不小心又点进来 …… → 【 你的服务器 …… C盘文件 …… 】巴拉巴拉的就看到了论坛又躺了 (:з っ )っ 哈哈哈 于是当时莫名感到太有趣了 ~
      1

      评分次数

        一直以来感谢你的爱(声),川上とも子小姐,谢谢

        KANON 完播 17 周年 & AIR 开播 19 周年纪念 & CLANNAD 发售 20 周年纪念 ^_^ 啦 ~ !  !  !

        2024 ^_^ 观铃 *^_^* 幸福快乐 *^_^* 啦 ~
        V ~ !      !      !





        —— 倒数计时 ——

        鼓起勇气,努力加油 ,全力以赴 ,迈步前行 ,无论何时 ,你都一定能去成为你所喜欢的你哟 ~ !

        结束宿命之轮的命运之‘圆’(羁绊) 传承爱与希望 实现梦想 崭新未来的开始啦 ~
        TOP