Skip to content

Commit 483255f

Browse files
committed
Misc
1 parent 2c2332b commit 483255f

File tree

15 files changed

+84
-85
lines changed

15 files changed

+84
-85
lines changed

SmartImage/Core/Integration.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
using Microsoft.Win32;
66
using Novus.Win32;
77
using SimpleCore.Cli;
8-
using SimpleCore.Cli;
98

109
namespace SmartImage.Core
1110
{

SmartImage/Core/SearchConfig.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ private SearchConfig()
7878
/// <summary>
7979
/// Does not open results from priority engines if the result similarity (if available) is below a certain threshold,
8080
/// or there are no relevant results.
81-
/// <see cref="BasicSearchResult.Filter"/> is <c>true</c> if <see cref="SearchEngine.FilterThreshold"/> is less than <see cref="BasicSearchResult.Similarity"/>
81+
/// <see cref="BasicSearchResult.Filter"/> is <c>true</c> if <see cref="BaseSearchEngine.FilterThreshold"/> is less than <see cref="BasicSearchResult.Similarity"/>
8282
/// </summary>
8383
[field: ConfigComponent("filter_results", "--filter-results", true, true)]
8484
public bool FilterResults { get; set; }

SmartImage/Engines/SearchEngine.cs renamed to SmartImage/Engines/BaseSearchEngine.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,11 @@ namespace SmartImage.Engines
77
/// <summary>
88
/// Represents a search engine
99
/// </summary>
10-
public abstract class SearchEngine
10+
public abstract class BaseSearchEngine
1111
{
1212
public string BaseUrl { get; }
1313

14-
protected SearchEngine(string baseUrl)
14+
protected BaseSearchEngine(string baseUrl)
1515
{
1616
BaseUrl = baseUrl;
1717
}

SmartImage/Engines/Other/BingEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
namespace SmartImage.Engines.Other
1616
{
17-
public sealed class BingEngine : SearchEngine
17+
public sealed class BingEngine : BaseSearchEngine
1818
{
1919
public BingEngine() : base("https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=") { }
2020
public override SearchEngineOptions Engine => SearchEngineOptions.Bing;

SmartImage/Engines/Other/GoogleImagesEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
namespace SmartImage.Engines.Other
99
{
10-
public sealed class GoogleImagesEngine : SearchEngine
10+
public sealed class GoogleImagesEngine : BaseSearchEngine
1111
{
1212
public GoogleImagesEngine() : base("http://images.google.com/searchbyimage?image_url=") { }
1313

SmartImage/Engines/Other/ImgOpsEngine.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
#nullable enable
1010
namespace SmartImage.Engines.Other
1111
{
12-
public sealed class ImgOpsEngine : SearchEngine, IUploadEngine
12+
public sealed class ImgOpsEngine : BaseSearchEngine, IUploadEngine
1313
{
1414
public ImgOpsEngine() : base("http://imgops.com/") { }
1515

16-
public override string Name => "ImgOps";
17-
18-
public override Color Color => Color.Pink;
16+
public override string Name => "ImgOps";
17+
18+
public override Color Color => Color.Pink;
1919

2020
public override SearchEngineOptions Engine => SearchEngineOptions.ImgOps;
2121

SmartImage/Engines/Other/IqdbEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
#nullable enable
1313
namespace SmartImage.Engines.Other
1414
{
15-
public sealed class IqdbEngine : SearchEngine
15+
public sealed class IqdbEngine : BaseSearchEngine
1616
{
1717
public IqdbEngine() : base("https://iqdb.org/?url=") { }
1818

SmartImage/Engines/Other/KarmaDecayEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace SmartImage.Engines.Other
44
{
5-
public sealed class KarmaDecayEngine : SearchEngine
5+
public sealed class KarmaDecayEngine : BaseSearchEngine
66
{
77
public KarmaDecayEngine() : base("http://karmadecay.com/search/?q=") { }
88

SmartImage/Engines/Other/TinEyeEngine.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace SmartImage.Engines.Other
44
{
5-
public sealed class TinEyeEngine : SearchEngine
5+
public sealed class TinEyeEngine : BaseSearchEngine
66
{
77
public TinEyeEngine() : base("https://www.tineye.com/search?url=") { }
88

SmartImage/Engines/Other/YandexEngine.cs

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using System.IO;
66
using System.Linq;
77
using System.Net;
8+
using System.Xml.XPath;
89
using HtmlAgilityPack;
910
using SimpleCore.Net;
1011
using SimpleCore.Utilities;
@@ -16,31 +17,18 @@
1617

1718
namespace SmartImage.Engines.Other
1819
{
19-
public sealed class YandexEngine : SearchEngine
20+
public sealed class YandexEngine : BaseSearchEngine
2021
{
2122
public YandexEngine() : base("https://yandex.com/images/search?rpt=imageview&url=") { }
2223

2324
public override SearchEngineOptions Engine => SearchEngineOptions.Yandex;
2425

2526
public override string Name => "Yandex";
2627

27-
2828

2929
private const int TOTAL_RES_MIN = 500_000;
3030

31-
private static ISearchResult[] FilterAndSelectBestImages(List<BasicSearchResult> rg)
32-
{
33-
const int TAKE_N = 5;
34-
35-
var best = rg.OrderByDescending(i => i.FullResolution)
36-
.Take(TAKE_N)
37-
.Cast<ISearchResult>()
38-
.ToArray();
39-
40-
return best;
41-
}
42-
43-
private static string GetYandexAnalysis(HtmlDocument doc)
31+
private static string GetAnalysis(HtmlDocument doc)
4432
{
4533
const string TAGS_XP = "//div[contains(@class, 'Tags_type_simple')]/*";
4634

@@ -52,7 +40,7 @@ private static string GetYandexAnalysis(HtmlDocument doc)
5240
}
5341

5442

55-
private static List<BasicSearchResult> GetYandexImages(HtmlDocument doc)
43+
private static List<BasicSearchResult> GetImages(HtmlDocument doc)
5644
{
5745
const string TAGS_ITEM_XP = "//a[contains(@class, 'Tags-Item')]";
5846

@@ -92,6 +80,7 @@ private static List<BasicSearchResult> GetYandexImages(HtmlDocument doc)
9280
return images;
9381
}
9482

83+
9584
public override FullSearchResult GetResult(string url)
9685
{
9786
// todo: slow
@@ -110,16 +99,16 @@ public override FullSearchResult GetResult(string url)
11099
* Parse what the image looks like
111100
*/
112101

113-
string? looksLike = GetYandexAnalysis(doc);
102+
string? looksLike = GetAnalysis(doc);
114103

115104

116105
/*
117106
* Find and sort through high resolution image matches
118107
*/
119108

120-
var images = GetYandexImages(doc);
109+
var images = GetImages(doc);
121110

122-
ISearchResult[] bestImages = FilterAndSelectBestImages(images);
111+
ISearchResult[] bestImages = FullSearchResult.FilterAndSelectBestImages(images);
123112

124113
//
125114
var best = images[0];
@@ -129,7 +118,7 @@ public override FullSearchResult GetResult(string url)
129118
sr.Description = looksLike;
130119

131120
sr.AddExtendedResults(bestImages);
132-
121+
133122
}
134123
catch (Exception e) {
135124
// ...

0 commit comments

Comments
 (0)