Esempio n. 1
0
        /// <summary>
        /// 更新全部书籍
        /// </summary>
        public static void BooksUpdate(object ob)
        {
            //获取全部书籍
            DataTable   dt    = SQLiteDBHelper.ExecuteDataTable("select *from Books", null);
            List <Book> Books = ModelConvertHelper <Book> .DataTableToList(dt);

            foreach (Book book in Books)
            {
                //获取初始搜索文本
                string html = GetHtml.GetHttpWebRequest(book.Url);

                BookSource bs = GetBookSource(book.Source);

                //检测书源有效性
                if (bs.Title is null)
                {
                    Tips tips = new Tips(book.Name + "的书源不存在,请检查书源是否已经被删除掉?");
                    tips.Show();
                    return;
                }
                //获取最新章节
                string LatestChapters = Tool.GetRegexStr(html, bs.NewestRegular).Trim();

                //获取更新时间
                string Update = Tool.GetRegexStr(html, bs.UpdateRegular).Trim();

                SQLiteDBHelper.ExecuteNonQuery("Update Books set 'Newest' = '" + LatestChapters + "', 'Update' = '" + Tool.GetUpdataDate(Update) + "' where Id =" + book.Id, null);
            }
            ((MainWindow)ob).Dispatcher.Invoke(new Action(() =>
            {
                ((MainWindow)ob).DataContext = DataFetch.GetBooks();
            }));
        }
Esempio n. 2
0
        /// <summary>
        /// 获取网页内容
        /// </summary>
        /// <param name="url">需要查询的链接</param>
        /// <returns></returns>
        public static string GetHttpWebRequest(string url)
        {
            //网站编码
            string     code       = string.Empty;
            BookSource bookSource = DataFetch.URLGetBookSource(url);

            //防止为NULL
            //if (bookSource == null) return "";

            if (bookSource.Code == null || bookSource.Code.Trim().Length <= 0)
            {
                code            = GetCode(url);
                bookSource.Code = code;
                SQLiteDBHelper.ExecuteDataTable("update BookSource set Code='" + code + "' where Url='" + bookSource.Url + "'; ", null);
                TempData.UpdateBookSourceS();
            }
            else
            {
                code = bookSource.Code;
            }

            return(GetHttp(url, code));
        }