Example #1
0
        public ActionResult Add(string url, long uid, long folderID)
        {
            BizResultInfo result   = new BizResultInfo();
            var           userInfo = BizUserInfo.LoadByUserInfoID(uid);

            if (string.IsNullOrEmpty(url) || userInfo == null)
            {
                LogHelper.WriteInfo("AddBookmark失败", "AddBookmark失败", new { UserInfoID = uid, URL = url, FolderID = folderID });
                return(Json(result));
            }

            //不存在书签夹,创建一个默认的书签夹
            var folderInfo = BizUserWebFolder.LoadByID(folderID);

            if (folderInfo.UserWebFolderID == 0)
            {
                folderInfo.UserInfoID       = uid;
                folderInfo.WebFolderName    = userInfo.UserName + "的默认书签夹";
                folderInfo.IntroContent     = "";
                folderInfo.IElementJSON     = "";
                folderInfo.Grade            = 0;
                folderInfo.CreateTime       = DateTime.Now;
                folderInfo.IElementHashcode = folderInfo.GetHashCode();
                folderInfo.Save();
                folderID = folderInfo.UserWebFolderID;
            }

            BizBookmarkInfo bookmark = new BizBookmarkInfo();

            bookmark.Href = url;
            var res = HTTPHelper.GetHTML(url);

            if (!string.IsNullOrEmpty(res.Item1))
            {
                bookmark.HTML = res.Item1;
                HtmlDocument htmlDoc = new HtmlDocument();
                htmlDoc.LoadHtml(res.Item1);
                var title = htmlDoc.DocumentNode.SelectSingleNode("//title").InnerText;
                bookmark.BookmarkName = !string.IsNullOrEmpty(title) ? title:url;
            }
            else
            {
                bookmark.BookmarkName = url;
            }

            if (string.IsNullOrEmpty(res.Item2) || res.Item2.ToUpper() == "ALLOW-FROM")
            {
                bookmark.IsShowWithiframe = 1;
            }

            bookmark.UserWebFolderID = folderID;
            bookmark.CreateTime      = DateTime.Now;
            bookmark.Host            = url.GetHost();
            bookmark.UserInfoID      = uid;
            bookmark.HashCode        = bookmark.GetHashCode();
            bookmark.Save();
            return(Json(result));
        }
Example #2
0
        private static string GetHTMLByHTTPWebRequest(string indexURL)
        {
            HttpWebRequest httpWebRequest = WebRequest.CreateHttp(indexURL);

            AddCookies(httpWebRequest);
            var html = HTTPHelper.GetHTML(httpWebRequest);

            return(html);
        }
Example #3
0
        public IActionResult GetDoubanCity(string groupID = "")
        {
            if (string.IsNullOrEmpty(groupID))
            {
                groupID = "shanghaizufang";
            }
            var url        = $"https://www.douban.com/group/{groupID}/";
            var htmlResult = HTTPHelper.GetHTML(url);

            return(Json(new { IsSuccess = true, cityName = "上海" }));
        }
Example #4
0
        public ActionResult ShowBookmarkHTML(long bookmarkID, string url)
        {
            UIBookmarkInfo model = null;

            if (bookmarkID == 0 || string.IsNullOrEmpty(url))
            {
                return(PartialView("ShowBookmarkHTML", model));
            }


            var bookmarkInfo = BizBookmarkInfo.LoadByID(bookmarkID);

            if (bookmarkInfo == null)
            {
                return(PartialView("ShowBookmarkHTML", model));
            }
            model = new UIBookmarkInfo();
            model.IsShowWithiframe = bookmarkInfo.IsShowWithiframe == 1;//是否可在iframe中展示

            if (string.IsNullOrEmpty(bookmarkInfo.HTML))
            {
                var result = HTTPHelper.GetHTML(url);
                if (string.IsNullOrEmpty(result.Item1))
                {
                    model                = new UIBookmarkInfo();
                    model.HTML           = bookmarkInfo.HTML;
                    model.Href           = bookmarkInfo.Href;
                    model.UserInfoID     = bookmarkInfo.UserInfoID;
                    model.Host           = bookmarkInfo.Host;
                    model.BookmarkName   = bookmarkInfo.BookmarkName;
                    model.BookmarkInfoID = bookmarkInfo.BookmarkInfoID;
                    return(PartialView("ShowBookmarkHTML", model));
                }

                bookmarkInfo.HTML = result.Item1;

                if (string.IsNullOrEmpty(result.Item2) || result.Item2.ToUpper() == "ALLOW-FROM")
                {
                    bookmarkInfo.IsShowWithiframe = 1;
                    model.IsShowWithiframe        = true;
                }

                bookmarkInfo.Save();
            }

            model.HTML           = bookmarkInfo.HTML;
            model.Href           = bookmarkInfo.Href;
            model.UserInfoID     = bookmarkInfo.UserInfoID;
            model.Host           = bookmarkInfo.Host;
            model.BookmarkName   = bookmarkInfo.BookmarkName;
            model.BookmarkInfoID = bookmarkInfo.BookmarkInfoID;
            return(PartialView("ShowBookmarkHTML", model));
        }
        public IActionResult GetDoubanHouseInfo(string groupID = "", int index = 0)
        {
            if (string.IsNullOrEmpty(groupID))
            {
                groupID = "shanghaizufang";
            }
            var url         = $"https://www.douban.com/group/{groupID}/discussion?start={index*25}";
            var htmlResult  = HTTPHelper.GetHTML(url);
            var page        = new HtmlParser().Parse(htmlResult);
            var lstRoomInfo = page.QuerySelectorAll("td.title").Select(item => new HouseInfo()
            {
                HouseTitle    = item.QuerySelector("a").GetAttribute("title"),
                HouseURL      = item.QuerySelector("a").GetAttribute("href"),
                HouseLocation = item.QuerySelector("a").GetAttribute("title"),
            });

            return(Json(new { IsSuccess = true, HouseInfos = lstRoomInfo }));
        }