zoukankan      html  css  js  c++  java
  • 新项目中,简单实现用微信看小说更新

    实现原理: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;
                    
                }
                
    
            }
    

      

    想给大家看下效果,就把我写给朋友的教程贴在这。

    相信很多人手机都装有微信,毕竟微信是约炮界的利器。我们喜欢看小说的人,等待小说更新可以说是一件很痛苦的事,想着小说的剧情,焦急的刷新着网页,看下小说更新了没有。有时候,工作一半的时,也会看下小说是不是更新了。

      今天向大家介绍使用微信来看小说最新章节的方法。先介绍一下原理:微信能够接收邮箱的邮件,如果能够把小说最新的章节当成邮件来发送,就能通过微信来看小说了。现在的问题是怎么把小说的最新章节当成邮件来发送了呢?幸好,有家网站提供这个服务,就以《官策》为例。

    在浏览器打开  www.25read.com/book5/page1

     

    在页面中找到  订阅更新  的链接,如下图

    在接下来的页面中,输入您微信能够接收邮件的邮箱地址,点击订阅。如下图:

    请到相应邮箱把地址:lulua00@126.com 添加到白名单中。以QQ邮箱为例,

     

    设置---->反垃圾------>设置邮件地址白名单------> 输入 lulua00@126.com  添加到白名单中

     

    到收件箱中,找到激活邮件,如图

    打开邮件,并点击  订阅官策更新 链接。到此,整个过程完成。

    效果图

     

  • 相关阅读:
    六 Vue学习 首页 (下)
    【Python】xpath中为什么粘贴进去代码后老报错?如何在定位元素的时候准确找到定位切入点?
    【Python】if相关知识点
    【Python】获取翻页之后的各页面中的属性值。
    【Python】如何取到input中的value值?
    【Python】两个for循环嵌套练习
    【Python】自动化测试框架-共通方法汇总
    【Python】Python 打印和输出更多用法。
    【python】Python3 循环语句
    【Python+Selenium】猪猪练习成功版:csv文件的输入和输出(运行环境:python3.5版本)
  • 原文地址:https://www.cnblogs.com/aanaa/p/3498300.html
Copyright © 2011-2022 走看看