Skip to content

TheWhiteDog9487/WordPressCommentWatcher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

介绍

关于这个东西可以看这篇文章

适用平台

WordPress
没别的原因,只是因为我自己在用而已。

依赖项

需要pip里的discord.py和requests包。
建议使用虚拟环境,隔离掉对全局环境的污染,而且Ubuntu新版本的apt仓库里好像已经没有python3-discord了。

# Windows用户看这边~
python -m venv bot-env
bot-env/Scripts/activate.ps1
# ↑ 如果使用命令提示符,就用activate.bat
pip install -U discord.py requests

# Linux用户看这边~
apt install libffi-dev libnacl-dev python3-dev
python3 -m venv bot-env
source bot-env/bin/activate
# ↑ 如果使用fish,就用activate.fish
pip install -U discord.py requests

部署

从仓库下载"WordPress评论监控.py",打开。
首次运行会直接退出,目录下多出来一个json配置文件,打开。
URL:要监测博客的地址,可以是IP或域名,必须加http://或者https://,末尾不要加/
_DiscordConfig__Bot_Token:机器人的令牌
注:不用在意这个属性的名称为什么看起来很奇怪,受保护的类型序列化之后是这样的。
Channel_Message:如果你希望机器人在一个服务器的频道内提醒你,这里就填true;如果你希望机器人私信你,那就填false。
Admin_User_ID:选择私信提醒的朋友,这里填上你的Discord用户ID,选择频道提醒的不用理会。
Channel_ID:选择频道提醒的朋友,这里填上你想让机器人发送消息的频道ID,选择私信提醒的不用理会。
Ignore_List:如果你希望某一位或某些用户发送评论时你不会收到通知,就把他(们)的用户名填入这个列表内,如果有多个就用逗号分隔。
注意:Admin_User_ID和Channel_ID直接写数字就行,不用像上面的Token那样加引号。Channel_Message直接填true或false,也不要加引号。

填写完成之后应该大致长这样:

{
  	"Ignore_List":["TheWhiteDog9487","twd"],
  	"URL":"https://www.thewhitedog9487.xyz",
	"_DiscordConfig__Bot_Token":"MTA4ODA2OTI5Nzg2MTA1MDQ0OA.GZkIBA.-11qdvzOz5o3zFiC-pW1YjbpFOaa93Q1vycOYg",
	"Admin_User_ID":785275297272909078,
	"Channel_ID":4987138441723578956,
	"Channel_Message":true
}

( 献祭一下以前的令牌,来这当下例子

这个时候就已经可以跑起来了。
但是,如果每次重启设备后都是人工去开启程序,非常麻烦且不必要,非常的不人性化。
所以,我的建议是,把这个东西注册成一个服务。
Windows用户考虑下计划任务(我没实际用过,仅提供可能的建议)
Linux用户可以考虑用service文件,格式参考这个

[Unit]
Description=WordPress评论监控
After=multi-user.target

[Service]
WorkingDirectory=/home/App
User=root
Type=idle
ExecStart=/bin/bash -c 'source /home/App/bot-env/bin/activate && python3 /home/App/WordPress评论监控.py'
Restart=always

[Install]
WantedBy=multi-user.target

注意一下里面的WorkingDirectory=和ExecStart=,后面的路径换成你自己程序的位置。
把这个文件保存下来,假设你的文件路径在/home/App/WordPressCommentWatcher.service
打开你的终端。

ln -s /home/App/WordPressCommentWatcher.service /usr/lib/systemd/system/
# 链接还是复制,随意。
systemctl daemon-reload
systemctl enable WordPressCommentWatcher
systemctl start WordPressCommentWatcher 
# 然后你就可以用 systemctl status WordPressCommentWatcher 来查看服务状态。

不出意外的话,应该是没问题了。

About

当博客里有新评论的时候,及时通知你。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages