IWebClient: add EmulateBrowser flag

This commit is contained in:
kaso17 2017-08-11 16:52:58 +02:00
parent e079c90535
commit d03cbefa57
5 changed files with 8 additions and 6 deletions

View File

@ -103,7 +103,7 @@ namespace Jackett.Utils.Clients
clearanceHandlr.InnerHandler = clientHandlr;
using (var client = new HttpClient(clearanceHandlr))
{
if (webRequest.EmulateBrowser)
if (webRequest.EmulateBrowser == true)
client.DefaultRequestHeaders.Add("User-Agent", BrowserUtil.ChromeUserAgent);
else
client.DefaultRequestHeaders.Add("User-Agent", "Jackett/" + configService.GetVersion());

View File

@ -95,7 +95,7 @@ namespace Jackett.Utils.Clients
request.Headers.ExpectContinue = false;
request.RequestUri = new Uri(webRequest.Url);
if (webRequest.EmulateBrowser)
if (webRequest.EmulateBrowser == true)
request.Headers.UserAgent.ParseAdd(BrowserUtil.ChromeUserAgent);
else
request.Headers.UserAgent.ParseAdd("Jackett/" + configService.GetVersion());

View File

@ -18,6 +18,7 @@ namespace Jackett.Utils.Clients
protected IProcessService processService;
protected DateTime lastRequest = DateTime.MinValue;
protected TimeSpan requestDelayTimeSpan;
public bool EmulateBrowser = true;
public double requestDelay
{
get { return requestDelayTimeSpan.TotalSeconds; }
@ -41,6 +42,9 @@ namespace Jackett.Utils.Clients
async protected void DelayRequest(WebRequest request)
{
if (request.EmulateBrowser == null)
request.EmulateBrowser = EmulateBrowser;
if (requestDelay != 0)
{
var timeElapsed = DateTime.Now - lastRequest;

View File

@ -37,7 +37,7 @@ namespace Jackett.Utils.Clients
args.AppendFormat("--url \"{0}\" ", request.Url);
if (request.EmulateBrowser)
if (request.EmulateBrowser == true)
args.AppendFormat("-i -sS --user-agent \"{0}\" ", BrowserUtil.ChromeUserAgent);
else
args.AppendFormat("-i -sS --user-agent \"{0}\" ", "Jackett/" + configService.GetVersion());

View File

@ -14,7 +14,6 @@ namespace Jackett.Utils.Clients
PostData = new List<KeyValuePair<string, string>>();
Type = RequestType.GET;
Headers = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase);
EmulateBrowser = true;
}
public WebRequest(string url)
@ -23,7 +22,6 @@ namespace Jackett.Utils.Clients
Type = RequestType.GET;
Url = url;
Headers = new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase);
EmulateBrowser = true;
}
public string Url { get; set; }
@ -32,7 +30,7 @@ namespace Jackett.Utils.Clients
public string Referer { get; set; }
public RequestType Type { get; set; }
public string RawBody { get; set; }
public bool EmulateBrowser { get; set; }
public bool? EmulateBrowser { get; set; }
public Encoding Encoding { get; set; }
/// <summary>