public virtual WebRequestParameter CreateImageRequest(GalleryImageView view, GalleryImagePath path, GalleryParameterValues values) { var parameter = this.CreateRequestParameter(); parameter.Method = "GET"; parameter.Uri = path.ImageUrl; return(parameter); }
public override GalleryImagePath ReloadImagePath(GalleryImageView _view, GalleryImagePath prev, GalleryParameterValues values) { if (_view is HitomiGalleryImageView view) { this.InstallLtn(); var newView = this.GetGalleryImageView(view.ImageFile); return(this.GetGalleryImagePath(newView, values)); } else { throw new NotImplementedException(); } }
private GalleryImagePath GetGalleryImagePath(string viewUrl, GalleryParameterValues values) { var parameter = this.CreateRequestParameter(); parameter.Uri = viewUrl; parameter.Method = "GET"; using (var response = this.Explorer.Request(parameter)) { var bodyElement = response.ReadAsDocument().DocumentNode.ChildNodes["html"].ChildNodes["body"]; var mainDivElement = bodyElement.ChildNodes.FirstOrDefault(n => n.GetAttributeValue("id", string.Empty).Equals("i1")); var image = new GalleryImagePath { ImageUrl = this.GetGalleryImageUrl(mainDivElement, values), ReloadUrl = this.GetGalleryReloadUrl(viewUrl, mainDivElement) }; return(image); } }
public override WebRequestParameter CreateImageRequest(GalleryImageView view, GalleryImagePath path, GalleryParameterValues values) { var request = base.CreateImageRequest(view, path, values); request.Referer = Site.HitomiReader.ToUrl(this.DownloadInput); return(request); }
public virtual void Validate(GalleryImageView view, GalleryImagePath path, GalleryParameterValues values, byte[] bytes) { }
public abstract GalleryImagePath ReloadImagePath(GalleryImageView view, GalleryImagePath prev, GalleryParameterValues values);
public override WebRequestParameter CreateImageRequest(GalleryImageView view, GalleryImagePath path, GalleryParameterValues values) { var uri = new Uri(path.ImageUrl); var fileName = uri.GetFileName(); if (fileName.Equals("509.gif") == true) { throw new ImageRequestCreateException("ImageLimit"); } return(base.CreateImageRequest(view, path, values)); }
public override GalleryImagePath ReloadImagePath(GalleryImageView view, GalleryImagePath prev, GalleryParameterValues values) { return(this.GetGalleryImagePath(prev.ReloadUrl, values)); }