Files
jobtrackingapp/JobTrackerApi/Services/JobImport/Plugins/JobbnorgePlugin.cs
T
cesnimda 988a91a151
CI and Deploy / test (push) Successful in 2m34s
CI and Deploy / deploy (push) Successful in 56s
feat: persist job source and market
2026-07-30 23:38:22 +02:00

28 lines
886 B
C#

using System;
namespace JobTrackerApi.Services.JobImport.Plugins;
public sealed class JobbnorgePlugin : IJobSitePlugin
{
public bool CanHandle(string url) => url.Contains("jobbnorge.no", StringComparison.OrdinalIgnoreCase);
public JobImportResult Parse(string html, string url)
{
var meta = HtmlExtract.ReadMeta(html);
var title = meta.TryGetValue("og:title", out var t) ? t : HtmlExtract.ReadTitle(html);
var desc = meta.TryGetValue("og:description", out var d) ? d : null;
return new JobImportResult
{
SourceUrl = url,
Title = title,
Description = HtmlExtract.ToPlainText(desc),
Parser = "jobbnorge",
Source = "jobbnorge",
CountryCode = "NO",
Success = !string.IsNullOrWhiteSpace(title) && !string.IsNullOrWhiteSpace(desc),
};
}
}