public static bool CheckAccount(WebExplorer explorer, Func <WebRequestParameter> parameterProvider)
        {
            var parameter = parameterProvider();

            parameter.Uri    = "https://e-hentai.org/bounce_login.php?b=d&bt=1-1";
            parameter.Method = "GET";

            using (var response = explorer.Request(parameter))
            {
                var loc = response.Headers["location"];
                return(string.IsNullOrWhiteSpace(loc) == false);
            }
        }
Esempio n. 2
0
        public Manager(Config config, ILogger logger)
        {
            _webExplorer    = new WebExplorer(config);
            _actionExplorer = new ActionExplorer(config);
            _feedExplorer   = new FeedExplorer(config);
            _photoExplorer  = new PhotoExplorer(config);
            _userExplorer   = new UserExplorer(config);
            _logger         = logger;
            this._config    = config;

            //Onetime browser opening, explorer init.
            _webExplorer.Open();
            _actionExplorer.Open();
            _feedExplorer.Open();
            _photoExplorer.Open();
            _userExplorer.Open();
        }
        public static ImageLimit GetImageLimit(WebExplorer explorer, Func <WebRequestParameter> parameterProvider)
        {
            var parameter = parameterProvider();

            parameter.Uri    = "https://e-hentai.org/home.php";
            parameter.Method = "GET";

            using (var response = explorer.Request(parameter))
            {
                var document        = response.ReadAsDocument();
                var stuffboxDivNode = document.DocumentNode.ChildNodes["html"].ChildNodes["body"].ChildNodes.FirstOrDefault(n => n.GetAttributeValue("class", string.Empty).Equals("stuffbox"));
                var homeboxDivNode  = stuffboxDivNode.ChildNodes.FirstOrDefault(n => n.GetAttributeValue("class", string.Empty).Equals("homebox"));
                var cuts            = homeboxDivNode.InnerText.Cut("You are currently at ", " towards a limit of ", ".");

                var imageLimit = new ImageLimit
                {
                    Current = NumberUtils.ToInt(cuts[0]),
                    Limit   = NumberUtils.ToInt(cuts[1]),
                };

                return(imageLimit);
            }
        }
Esempio n. 4
0
 public WebRequestProvider(WebExplorer explorer)
 {
     this.Explorer = explorer;
 }