闲置VPS搭建WebMonitor—实时监控网页变化,并发送通知

项目地址:

https://github.com/LogicJake/WebMonitor

特性:

  • 支持requests请求网页,支持使用PhantomJS抓取异步加载的网页
  • 支持 xpath 和 css selector 选择器,支持 JsonPath 提取 json 数据
  • 支持邮件,pushover,微信提醒(support by server酱),Bark推送以及自定义GET/POST通知
  • 简洁的UI,可视化操作
  • 支持自定义请求头,抓取需要登录的网页
  • 支持设置监控规则
  • 监控RSS更新
  • 数据导入导出

安装

手动安装

下载源码,进入WebMonitor目录

git clone https://github.com/LogicJake/WebMonitor.git
cd WebMonitor

安装依赖,官方给的是pip命令,如果自己换了pip3可能会报错-bash: /usr/bin/pip: /usr/bin/python: bad interpreter: No such file or directory ,自己换成pip3 install -r requirements.txt 再运行即可

pip install -r requirements.txt

出现下图无报错即成功安装依赖

如果需要使用无头浏览器,请确认已经安装 phantomjs,且 phantomjs 被添加到系统路径

首次运行需要迁移数据库且设置管理账号,假设账号为 admin,密码为 password,运行端口为 8000(这些都可以在对应位置自行修改)

需要注意的是,运行端口需要自己在安全组或者防火墙中放行

python manage.py migrate
python manage.py initadmin --username admin --password password
python manage.py runserver 0.0.0.0:8000 --noreload

如下图无报错则运行成功

如果之前运行过又退出了,只需要进入WebMonitor 目录,指定端口即可

python manage.py runserver 0.0.0.0:8000 --noreload

之后在浏览器中输入你的服务器ip和端口号进入后台页面

如果你不喜欢用IP+端口的方式访问的话,可以建一个站点来反代8000端口.

以宝塔为例:

新建一个站点→反向代理→填写端口

之后访问你新建站点的域名就可以了

Docker 部署

首先确保自己的vps已经安装了docker,如果没有安装,可以看下面这篇文章

运行下面的命令下载 WebMonitor 镜像

docker pull logicjake/webmonitor

然后运行 webmonitor 即可,假设账号为 admin,密码为 password,运行端口为 8000
强烈建议通过 docker 文件夹映射参数 -v,将数据库文件保存到主机,否则在容器重建之后会丢失数据库文件,假设映射的主机目录为 /etc/webmonitor

docker run -d --name webmonitor -v /etc/webmonitor:/app/db -p 8000:8000 -e PORT=8000 -e USERNAME=admin -e PASSWORD=password logicjake/webmonitor

您可以使用下面的命令来关闭 webmonitor

docker stop webmonitor

具体使用方式见官方网址:

https://www.logicjake.xyz/WebMonitor/#/how

© 版权声明
THE END
喜欢就支持以下吧
点赞0赞赏
分享
评论 抢沙发

请登录后发表评论