实现原理:1 每隔一段时间监控小说的目录页,判断是否有新章节(我是通过比较每次获取的章节数,如果这次获取的比上一次多,就是更新了)
2 把新章节的作为邮件内容发送到邮箱中
3 微信接收该邮箱的提醒
贴关键部分代码:注意使用类库 HtmlAgilityPack ,可以搜一下就可以下载
获取小说目录的
/// <summary> /// 获取目录 /// </summary> /// <param name="url">小说页目录页</param> /// <param name="xPath"></param> /// <param name="Encoding"></param> /// <returns></returns> public Dictionary<string, string> List(string url, string xPath, string Encoding) { using (WebClient client = new WebClient()) { Dictionary<string, string> result = new Dictionary<string, string>(); string html = null; try { ; client.Headers.Add("User-Agent", "Baiduspider"); client.Encoding = System.Text.ASCIIEncoding.GetEncoding(Encoding); html = client.DownloadString(url); } catch (Exception ex) { Log.WriteError(string.Format("类:NovelList ,方法:List中,获取网页{0},异常信息:{1}", url, ex.Message)); } HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(html); HtmlNode rootNode = doc.DocumentNode; HtmlNodeCollection nodeList = rootNode.SelectNodes(xPath); try { foreach (var item in nodeList) { if (!String.IsNullOrWhiteSpace(item.InnerText) && item.InnerText != " ") { if (!result.ContainsKey(item.InnerText)) { result.Add(item.InnerText, item.FirstChild.Attributes["href"].Value); } } } } catch (Exception ex) { Log.WriteError(string.Format("类:NovelList ,方法:List中,foreach,获取网页url:{0}异常信息:{1}", url, ex.Message)); } return result; } }
获取具体章节的代码:
/// <summary> /// 获取章节的具体内容 /// </summary> /// <param name="url">小说章节的网址</param> /// <param name="xPath">XPath</param> /// <param name="Encoding">编码</param> /// <returns></returns> public string Content(string url, string xPath, string Encoding) { using (WebClient client = new WebClient()) { string html = string.Empty; client.Headers.Add("User-Agent", "Baiduspider"); client.Encoding = ASCIIEncoding.GetEncoding(Encoding); html = client.DownloadString(url); HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(html); HtmlNode node = doc.DocumentNode.SelectSingleNode(xPath); foreach (var item in node.Descendants("script").ToArray()) { item.Remove(); } foreach (var item in node.Descendants("style").ToArray()) { item.Remove(); } return node.InnerHtml; } }
想给大家看下效果,就把我写给朋友的教程贴在这。
相信很多人手机都装有微信,毕竟微信是约炮界的利器。我们喜欢看小说的人,等待小说更新可以说是一件很痛苦的事,想着小说的剧情,焦急的刷新着网页,看下小说更新了没有。有时候,工作一半的时,也会看下小说是不是更新了。
今天向大家介绍使用微信来看小说最新章节的方法。先介绍一下原理:微信能够接收邮箱的邮件,如果能够把小说最新的章节当成邮件来发送,就能通过微信来看小说了。现在的问题是怎么把小说的最新章节当成邮件来发送了呢?幸好,有家网站提供这个服务,就以《官策》为例。
1 在浏览器打开 www.25read.com/book5/page1
2 在页面中找到 订阅更新 的链接,如下图
3 在接下来的页面中,输入您微信能够接收邮件的邮箱地址,点击订阅。如下图:
4 请到相应邮箱把地址:lulua00@126.com 添加到白名单中。以QQ邮箱为例,
设置---->反垃圾------>设置邮件地址白名单------> 输入 lulua00@126.com 添加到白名单中
5 到收件箱中,找到激活邮件,如图
6 打开邮件,并点击 订阅官策更新 链接。到此,整个过程完成。
效果图