// Save public void Save() { db.SaveChanges(); }
public BaseObject Pass(int id) { BaseObject obj = new BaseObject(); var active = GetActive(id); if (active == null) { obj.Tag = -1; obj.Message = "该记录不存在!"; } if (active.IsPublic) { obj.Tag = -1; obj.Message = "审核失败,该记录为已审核!"; } active.IsPublic = true; obj.Tag = 1; obj.Message = "审核成功!"; db.SaveChanges(); return(obj); }
public static void btbtdy_Elapsed(object sender, ElapsedEventArgs e) { Stopwatch sw = new Stopwatch(); sw.Start(); using (SiteDataContext db = new SiteDataContext()) { for (int i = 0; i < 10; i++) { var task = db.SpiderTasks.FirstOrDefault(m => m.SpiderTaskID == 1); try { var url = "http://www.btbtdy.me/btdy/dy" + task.CurrentID + ".html"; btbtdy b = new btbtdy(url); bool err = false; var blog = b.GetMovie(out err); if (err) { return; } if (string.IsNullOrEmpty(blog.PageTitle)) { blog.PageTitle = blog.MovieTitle; } try { WebClient client = new WebClient(); byte[] bytes = client.DownloadData(new Uri("http://www.btbtdy.me/include/ajax.php?id=" + task.CurrentID + "&action=videoscore×tamp=1497498303965")); StringBuilder sb = new StringBuilder(); using (MemoryStream ms = new MemoryStream(bytes)) { ms.Seek(0, SeekOrigin.Begin); var s = System.Text.Encoding.Default.GetString(ms.ToArray()).Split(','); var point = (double.Parse(s[2]) / double.Parse(s[3])); blog.Grade = point > 0 ? point : 0; } } catch (Exception) { } if (blog.MovieID > 0) { } else { db.Movies.Add(blog); } db.SaveChanges(); //try //{ // if (!string.IsNullOrWhiteSpace(blog.PictureFile)) // { // WebClient client = new WebClient(); // byte[] bytes = client.DownloadData(new Uri(blog.PictureFile)); // blog.PictureFile = DateTime.Now.ToString("yyyyMM") + "/" + blog.MovieID + ".jpg"; // using (MemoryStream ms = new MemoryStream(bytes)) // { // ms.Seek(0, SeekOrigin.Begin); // ms.WriteTo(new FileStream("C:/www/btmovie/Content/Pictures/Blog/" + blog.PictureFile, FileMode.OpenOrCreate)); // } // db.SaveChanges(); // } //} //catch (Exception) //{ //} //加入明星 MovieStar star = null; MovieStarJoin starJoin = null; foreach (var item in blog.Stars.Split('|')) { if (!string.IsNullOrWhiteSpace(item)) { star = db.MovieStars.Where(m => m.StarName == item).FirstOrDefault(); if (star == null) { star = new MovieStar() { StarName = item }; db.MovieStars.Add(star); db.SaveChanges(); } starJoin = new MovieStarJoin() { MovieID = blog.MovieID, StarID = star.StarID, Type = StarType.actor }; db.MovieStarJoins.Add(starJoin); db.SaveChanges(); } } // add slug after (depends on ID) blog.Slug = blog.MovieID.ToString(); db.SaveChanges(); } catch (Exception ex) { WritLog(ex.Message + ex.StackTrace); } finally { task.CurrentID += 1; task.UpdateDate = DateTime.Now; db.SaveChanges(); } } } sw.Stop(); WritLog("本次抓取总共花费{0}ms." + sw.Elapsed.TotalMilliseconds); }