Skip to content

Commit c9981f9

Browse files
committed
Refactoring & misc fixes
1 parent 32c5fa4 commit c9981f9

File tree

6 files changed

+278
-195
lines changed

6 files changed

+278
-195
lines changed

SmartImage.Lib/Engines/Impl/Search/GoogleLensEngine.cs

Lines changed: 39 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,44 @@
1717

1818
namespace SmartImage.Lib.Engines.Impl.Search;
1919

20-
public class GoogleLensItem { }
20+
public class GoogleLensItem : IResultConverter2<GoogleLensItem>
21+
{
22+
23+
public string Title { get; private set; }
24+
25+
public string SiteName { get; private set; }
26+
27+
#region Implementation of IResultConverter2<out GoogleLensItem>
28+
29+
public IEnumerable<SearchResultItem> ToResultItem(SearchResult sr)
30+
{
31+
var sri = new SearchResultItem(sr)
32+
{
33+
34+
};
35+
36+
return [sri];
37+
}
38+
39+
public static GoogleLensItem Parse(INode n)
40+
{
41+
var gli = new GoogleLensItem();
42+
43+
if (n is IHtmlElement e) {
44+
var title = e.QuerySelector(".Yt787")?.TextContent;
45+
46+
//e.QuerySelector("//*[class*='gdOPf q07dbf uhHOwf ez24Df']");
47+
var siteName = e.SelectNodes("//*[contains(@class,'gdOPf')]");
48+
gli.Title = title;
49+
gli.SiteName = siteName[0].TextContent;
50+
}
51+
52+
return gli;
53+
}
54+
55+
#endregion
56+
57+
}
2158

2259
public class GoogleLensEngine : WebSearchEngine, IEndpointEngine /*, ICookiesEngine*/
2360
{
@@ -57,16 +94,9 @@ public GoogleLensEngine() : base(URL_BASE) { }
5794
protected override async ValueTask<SearchResultItem> ParseResultItem(INode n, SearchResult r)
5895
{
5996

60-
if (n is IHtmlElement e) {
61-
var title=e.QuerySelector(".Yt787")?.TextContent;
62-
//e.QuerySelector("//*[class*='gdOPf q07dbf uhHOwf ez24Df']");
63-
var siteName = e.SelectNodes("//*[contains(@class,'gdOPf')]");
6497

65-
}
6698
var sri = new SearchResultItem(r)
67-
{
68-
69-
};
99+
{ };
70100

71101
return sri;
72102
}

0 commit comments

Comments
 (0)