Server酱:https://sc.ftqq.com/3.version
功能:往 http://sc.ftqq.com/SCKEY.send 发GET请求,就可以在微信里收到消息。

using System;
using System.Text;
using System.Net;
using System.Threading;class DownloadStringTest
{static void Main(string[] args){   int times = 0;//对比次数string url = "http://jwb.xujc.com/tzgg/list.htm";//监控网址string url_1 = "https://sc.ftqq.com/SCUf.send?text=学校教务网有新通";//server酱服务:往绑定微信发送信息string dataSource = DownloadString(url);//获取监控网址指定的通知字符串Thread t = new Thread(Run) { IsBackground = false };//创建线程t.Start();//启动线程while(true){Thread.Sleep(60000);//每过六十秒运行一次string newDataSource = DownloadString(url);//六十秒后再次换取新的通知字符串times++;//计数++Console.WriteLine( "Running...Times:" + times );//提示信息if(dataSource != newDataSource )//对比六十秒前后的通知字符串{dataSource = newDataSource;//前后字符串不同,则刷新旧通知字符串Console.WriteLine( "学校教务网有新通知!" );//提示信息WebClient client = new WebClient();//创建WebClient对象var clientText = client.DownloadData(url_1); //取网页源码,启用server酱服务Console.WriteLine( Encoding.GetEncoding("UTF-8").GetString(clientText) );  //编码转换,输出状态}}}public static void Run(){Console.WriteLine( "Begin" );//提示信息}public static string FindString(string text)//找到通知栏第一项到第二项字符串,并返回{string strStart = "list_item i1";int strLength = strStart.Length;string str = text.Substring(text.IndexOf("list_item i1")+strLength,text.IndexOf("list_item i3")-text.IndexOf("list_item i1")-strLength);return str;}public static string DownloadString(string url)//取网页源码,编码转换,调用FindString(){try{var client = new WebClient();var clientText = client.DownloadData(url); //取网页源码var text = Encoding.GetEncoding("UTF-8").GetString(clientText); //编码转换string str = FindString( text );return str;}catch (Exception e){return e.ToString();}}
}

用C#WebClient+Server酱写一个监听网站通知的功能相关推荐

  1. 自动化测试(三)如何用python写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复。...

    写一个函数,这个函数的功能是,传入一个数字,产生N条邮箱,产生的邮箱不能重复.邮箱前面的长度是6-12之间,产生的邮箱必须包含大写字母.小写字母.数字和特殊字符 和上一期一样 代码中间有段比较混沌 有 ...

  2. 用Java手写一个微型下载资源网站

    文章目录 手写一个微型下载资源网站[Java实现用户注册.登陆.下载功能] 一.技术栈 二.流程分析图 注册 登陆 下载 三.案例实现效果 首页 注册 登陆 下载网主页 壁纸下载 书籍下载 影视下载 ...

  3. 写一个计算器,要求实现加减乘除功能,并且能够接受新数据,通过用户交互实现

    写一个计算器,要求实现加减乘除功能,并且能够接受新数据,通过用户交互实现 要求: 1.写四个方法:加减乘除 2.利用循环+switch进行用户交互 3.传递需要操作的两个数 4.输出结果 packag ...

  4. 关于一个监听、发送QQ消息的插件的使用部署

    先来简单介绍下这个插件,这个插件名为酷Q(coolq),官网点这里,是一群大佬们开发的QQ插件,其中有各种各样的群机器人,可以说是非常的好用了. 下面我简单的说一下他的使用以及在linux上的部署: ...

  5. Go聊天室的思路:一个拨号 一个监听

    客户端: 1.拨号服务器 建立连接 2.写一个协程进行死循环读取写入的信息 3.写入之后,写入到连接之中 服务端: 1.服务端进行监听 2.死循环等待接收  有信息的时候进行读取信息   3.读取的消 ...

  6. 如何写一个优质的网站标题title?

    网站标题也就是我们俗说的网站title,在html的超文本标签中<title>对于网站的设计和seo搜索引擎的优化都是有着重大的意义,网站的标题决定着我们网站的流量和转化的多少,一个好的标 ...

  7. 学习写一个模仿天猫网站

    学习完了前端的HTML CSS JavaScript等各项技术之后,会有一个感慨,各个知识点分开都不难,但是要做出一个成型的,好看的,时尚的网页,就无从下手. 这就需要经验的积累了. 那么,写一个模仿 ...

  8. 一个监听home键锁屏键的工具类

    /** * Home键监听封装 */ public class HomeWatcher {static final String TAG = "HomeWatcher"; priv ...

  9. 用nodej和glub-watcher写的监听go 项目自动编译,很鸡肋

    glub 一般都是很轻量的编译. go太重了,改一小个部分,就编译的话,多数是编译失败. 而且很消耗性能,还没想到完美的优化办法. 暂时用个定时器 监听2秒,停止1秒,如此循环,会减少些 " ...

最新文章

  1. 深入分析 Redis Lua 脚本运行原理
  2. Leetcode 137. 只出现一次的数字 II 解题思路及C++实现
  3. 2017年秋季个人阅读计划
  4. java分布式对象(RMI+部署使用RMI的程序)
  5. The security settings could not be applied to the database because the connection has failed安装Mysql
  6. 【Flink】connection indicates remote task manager was lost
  7. Windows Server 2012配置开机启动项
  8. 前端获取div里面的标签_「HTML」什么是 HTML 中的 div 标签
  9. 关于线性模型你可能还不知道的二三事
  10. 读取xml文件分析 EntityName 时出错的解决方案
  11. 汽车经销商销售发票扫描识别方案
  12. 关于oneNote插件加载不显示的问题(NoteHighlight)
  13. Java开发帮助文档
  14. 激光雷达+imu_大疆览沃浩界(Livox Horizon)激光雷达测评
  15. 自动驾驶 Apollo 源码分析系列,感知篇(一)
  16. 如何制作ANE+Android以及ANE开发中可能遇到的坑
  17. 奈奎斯特定理和香农定理解释
  18. cos(a+b)=cosa*cosb-sina*sinb的推导过程
  19. Apache ShenYu ModifyResponse插件使用
  20. 中文文字检测及识别(ORC)

热门文章

  1. 管理会计计算机应用,管理会计的机会成本
  2. (精华)2020年10月7日 高并发高可用 Redis实现异步架构
  3. 全球与中国钠还原剂市场深度研究分析报告
  4. linux usb gadget 日志
  5. 【Swing】图片查看器
  6. Lession08 继承和多态
  7. 2014 BUPT 新生排位赛07
  8. 洋钱罐借款「顶风作案」
  9. MySQL DBA 必读:万字归总表设计与 SQL 编写技巧
  10. 混沌工程——各大厂实践分享汇总(上篇)