コード例 #1
0
 public HomeController(TodayHouseDashboardJob houseDashboardJob,
                       HouseDapper houseDapper,
                       HouseDashboardService houseDashboardService,
                       PinPaiGongYuHouseCrawler pinpai,
                       PeopleRentingCrawler people,
                       DoubanHouseCrawler douban,
                       CCBHouesCrawler ccbHouse,
                       ZuberHouseCrawler zuber,
                       MoGuHouseCrawler mogu,
                       HKSpaciousCrawler hkSpacious,
                       BaiXingHouseCrawler baixing,
                       SyncHousesToESJob syncHousesToESJob,
                       ElasticsearchService elasticsearchService)
 {
     this.houseDashboardJob     = houseDashboardJob;
     this.houseDapper           = houseDapper;
     this.houseDashboardService = houseDashboardService;
     this.pinpai               = pinpai;
     this.people               = people;
     this.douban               = douban;
     this.ccbHouse             = ccbHouse;
     this.zuber                = zuber;
     this.mogu                 = mogu;
     this.hkSpacious           = hkSpacious;
     this.baixing              = baixing;
     this.syncHousesToESJob    = syncHousesToESJob;
     this.elasticsearchService = elasticsearchService;
 }
コード例 #2
0
        public IActionResult RunJobs()
        {
            Task.Factory.StartNew(() =>
            {
                try
                {
                    DoubanHouseCrawler.AnalyzeDoubanHouseContent();

                    //Job要执行的逻辑代码
                    PinPaiGongYuHouseCrawler.CapturPinPaiHouseInfo();

                    PeopleRentingCrawler.CapturHouseInfo();

                    DoubanHouseCrawler.CaptureHouseInfoFromConfig();

                    HouseSourceInfo.RefreshHouseSourceInfo();
                }
                catch (Exception ex)
                {
                    LogHelper.Error("RunJobs", ex);
                }
            });

            return(View());
        }
コード例 #3
0
        public IActionResult RunJobs()
        {
            DoubanHouseCrawler.CaptureHouseInfoFromConfig();
            HouseSourceInfo.RefreshHouseSourceInfo();
            PinPaiGongYuHouseCrawler.CapturPinPaiHouseInfo();

            //Task.Factory.StartNew(() =>
            //{
            //    try
            //    {

            //        PeopleRentingCrawler.CapturHouseInfo();
            //        DoubanHouseCrawler.CaptureHouseInfoFromConfig();
            //        DoubanHouseCrawler.AnalyzeDoubanHouseContentAll();
            //        HouseSourceInfo.RefreshHouseSourceInfo();
            //    }
            //    catch (Exception ex)
            //    {
            //        LogHelper.Error("RunJobs", ex);
            //    }

            //});

            return(View());
        }
コード例 #4
0
 public IActionResult RunJobs()
 {
     DoubanHouseCrawler.CaptureHouseInfo();
     PinPaiGongYuHouseCrawler.CapturePinPaiHouseInfo();
     PeopleRentingCrawler.CaptureHouseInfo();
     CCBHouesCrawler.CaptureHouseInfo();
     return(View());
 }
コード例 #5
0
 public IActionResult AddDouBanGroup(string doubanGroup, string cityName)
 {
     if (string.IsNullOrEmpty(doubanGroup) || string.IsNullOrEmpty(cityName))
     {
         return(Json(new { IsSuccess = false, error = "请输入豆瓣小组Group和城市名称。" }));
     }
     DoubanHouseCrawler.AddDoubanGroupConfig(doubanGroup, cityName);
     return(Json(new { IsSuccess = true }));
 }
コード例 #6
0
 public IActionResult RunJobs()
 {
     DoubanHouseCrawler.Run();
     PinPaiGongYuHouseCrawler.Run();
     PeopleRentingCrawler.Run();
     CCBHouesCrawler.Run();
     ZuberHouseCrawler.Run();
     MoGuHouseCrawler.Run();
     return(View());
 }
コード例 #7
0
 public PingPaiPeopleJob(PinPaiGongYuHouseCrawler pinpai,
                         PeopleRentingCrawler people,
                         DoubanHouseCrawler douban,
                         CCBHouesCrawler ccbHouse,
                         ZuberHouseCrawler zuber,
                         MoGuHouseCrawler mogu)
 {
     this.pinpai   = pinpai;
     this.people   = people;
     this.douban   = douban;
     this.ccbHouse = ccbHouse;
     this.zuber    = zuber;
     this.mogu     = mogu;
 }
コード例 #8
0
        public IActionResult GetDoubanHouseInfo(string groupID = "", int index = 0)
        {
            if (string.IsNullOrEmpty(groupID))
            {
                groupID = "shanghaizufang";
            }
            var houses      = DoubanHouseCrawler.GetHouseData(groupID, "", index);
            var lstRoomInfo = houses.Select(item => new HouseInfo()
            {
                HouseTitle    = item.HouseTitle,
                HouseURL      = item.HouseOnlineURL,
                HouseLocation = item.HouseTitle,
                Money         = "暂无"
            });

            return(Json(new { IsSuccess = true, HouseInfos = lstRoomInfo }));
        }
コード例 #9
0
 public HomeController(HouseDashboardJob houseDashboardJob,
                       HouseDapper houseDapper,
                       HouseDashboardService houseDashboardService,
                       PinPaiGongYuHouseCrawler pinpai,
                       PeopleRentingCrawler people,
                       DoubanHouseCrawler douban,
                       CCBHouesCrawler ccbHouse,
                       ZuberHouseCrawler zuber,
                       MoGuHouseCrawler mogu,
                       HKSpaciousCrawler hkSpacious)
 {
     this.houseDashboardJob     = houseDashboardJob;
     this.houseDapper           = houseDapper;
     this.houseDashboardService = houseDashboardService;
     this.pinpai     = pinpai;
     this.people     = people;
     this.douban     = douban;
     this.ccbHouse   = ccbHouse;
     this.zuber      = zuber;
     this.mogu       = mogu;
     this.hkSpacious = hkSpacious;
 }
コード例 #10
0
        public IActionResult AddDouBanGroup([FromBody] JToken model)
        {
            string doubanGroup = model?["groupId"].ToString();
            string cityName    = model?["cityName"].ToString();

            if (string.IsNullOrEmpty(doubanGroup) || string.IsNullOrEmpty(cityName))
            {
                return(Ok(new { success = false, error = "请输入豆瓣小组Group和城市名称。" }));
            }
            var topics = DoubanHouseCrawler.GetHouseData(doubanGroup, cityName, 1);

            if (topics != null && topics.Count() > 0)
            {
                var cityInfo     = $"{{ 'groupid':'{doubanGroup}','cityname':'{cityName}','pagecount':5}}";
                var doubanConfig = new CrawlerConfiguration();
                if (doubanConfig != null)
                {
                    return(Ok(new { success = true }));
                }
                var config = new CrawlerConfiguration()
                {
                    ConfigurationKey   = 0,
                    ConfigurationValue = cityInfo,
                    ConfigurationName  = ConstConfigName.Douban,
                    DataCreateTime     = DateTime.Now,
                    IsEnabled          = true,
                };
                configurationDapper.Insert(config);
                return(Ok(new { success = true }));
            }
            else
            {
                return(Ok(new
                {
                    success = false,
                    error = "保存失败!请检查豆瓣小组ID(如:XMhouse)/城市名称(如:厦门)是否正确..."
                }));
            }
        }
コード例 #11
0
        public IActionResult AddDouBanGroup(string doubanGroup, string cityName)
        {
            if (string.IsNullOrEmpty(doubanGroup) || string.IsNullOrEmpty(cityName))
            {
                return(Json(new { IsSuccess = false, error = "请输入豆瓣小组Group和城市名称。" }));
            }
            var topics = DoubanHouseCrawler.GetHouseData(doubanGroup, cityName, 1);

            if (topics != null && topics.Count() > 0)
            {
                var cityInfo     = $"{{ 'groupid':'{doubanGroup}','cityname':'{cityName}','pagecount':5}}";
                var doubanConfig = dataContent.CrawlerConfigurations
                                   .FirstOrDefault(c => c.ConfigurationName == ConstConfigurationName.Douban && c.ConfigurationValue == cityInfo);
                if (doubanConfig != null)
                {
                    return(Json(new { IsSuccess = true }));
                }
                var config = new BizCrawlerConfiguration()
                {
                    ConfigurationKey   = 0,
                    ConfigurationValue = cityInfo,
                    ConfigurationName  = ConstConfigurationName.Douban,
                    DataCreateTime     = DateTime.Now,
                    IsEnabled          = true,
                };
                dataContent.Add(config);
                dataContent.SaveChanges();
                return(Json(new { IsSuccess = true }));
            }
            else
            {
                return(Json(new
                {
                    IsSuccess = false,
                    error = "保存失败!请检查豆瓣小组ID(如:XMhouse)/城市名称(如:厦门)是否正确..."
                }));
            }
        }
コード例 #12
0
 public JobsController(TodayHouseDashboardJob houseDashboardJob,
                       HouseDapper houseDapper,
                       HouseDashboardService houseDashboardService,
                       PinPaiGongYuHouseCrawler pinpai,
                       PeopleRentingCrawler people,
                       DoubanHouseCrawler douban,
                       CCBHouesCrawler ccbHouse,
                       ZuberHouseCrawler zuber,
                       MoGuHouseCrawler mogu,
                       HKSpaciousCrawler hkSpacious,
                       BaiXingHouseCrawler baixing,
                       ChengduZufangCrawler chengdu,
                       SyncHousesToESJob syncHousesToESJob,
                       ElasticsearchService elasticsearchService,
                       RefreshHouseCacheJob refreshHouseCacheJob,
                       RefreshHouseSourceJob refreshHouseSourceJob,
                       BeikeHouseCrawler beike)
 {
     this.houseDashboardJob     = houseDashboardJob;
     this.houseDapper           = houseDapper;
     this.houseDashboardService = houseDashboardService;
     this.pinpai                = pinpai;
     this.people                = people;
     this.douban                = douban;
     this.ccbHouse              = ccbHouse;
     this.zuber                 = zuber;
     this.mogu                  = mogu;
     this.hkSpacious            = hkSpacious;
     this.baixing               = baixing;
     this.syncHousesToESJob     = syncHousesToESJob;
     this.elasticsearchService  = elasticsearchService;
     this.refreshHouseCacheJob  = refreshHouseCacheJob;
     this.refreshHouseSourceJob = refreshHouseSourceJob;
     this.beike                 = beike;
     this.chengdu               = chengdu;
 }
コード例 #13
0
        public IActionResult RunJobs()
        {
            Task.Factory.StartNew(() =>
            {
                try
                {
                    for (int index = 1; index < 100; index++)
                    {
                        Console.WriteLine($"第{index}次开始分析数据。");

                        DoubanHouseCrawler.AnalyzeDoubanHouseContentAll();
                        System.Threading.Thread.Sleep(1000 * 20);

                        Console.WriteLine($"本次分析数据结束到此...");
                    }
                }
                catch (Exception ex)
                {
                    LogHelper.Error("RunJobs", ex);
                }
            });

            return(View());
        }