#444 remStopWords

Related Work Items: #44
This commit is contained in:
Hamid Reza Mohammadi 2024-07-11 19:33:04 +03:30
parent da98862179
commit 4a9d971f9d

View File

@ -1283,7 +1283,7 @@ namespace GanjooRazor.Pages
}
public async Task<ActionResult> OnGetCategoryWordCountsAsync(int catId, int poetId)
public async Task<ActionResult> OnGetCategoryWordCountsAsync(int catId, int poetId, bool remStopWords = false)
{
var wordSumsResponse = await _httpClient.GetAsync($"{APIRoot.Url}/api/ganjoor/wordsums/{catId}");
@ -1296,14 +1296,223 @@ namespace GanjooRazor.Pages
{
return new BadRequestObjectResult(JsonConvert.DeserializeObject<string>("شمارش واژگان انجام نشده."));
}
var wordCountsResponse = await _httpClient.GetAsync($"{APIRoot.Url}/api/ganjoor/wordcounts/{catId}?PageNumber=1&PageSize=100");
int pageSize = remStopWords ? 200 : 100;
var wordCountsResponse = await _httpClient.GetAsync($"{APIRoot.Url}/api/ganjoor/wordcounts/{catId}?PageNumber=1&PageSize={pageSize}");
if (!wordCountsResponse.IsSuccessStatusCode)
{
return new BadRequestObjectResult(JsonConvert.DeserializeObject<string>(await wordCountsResponse.Content.ReadAsStringAsync()));
}
var wordCounts = JsonConvert.DeserializeObject<CategoryWordCount[]>(await wordCountsResponse.Content.ReadAsStringAsync());
if (remStopWords)
{
string[] stopWords =
[
"و",
"از",
"که",
"به",
"در",
"را",
"تو",
"ز",
"بر",
"آن",
"است",
"من",
"می",
"این",
"او",
"چون",
"دل",
"بود",
"ای",
"تا",
"چو",
"هر",
"با",
"ما",
"چه",
"سر",
"شد",
"بی",
"خود",
"گفت",
"نیست",
"جان",
"نه",
"همه",
"گر",
"کند",
"اگر",
"کرد",
"باشد",
"هم",
"دست",
"مرا",
"روی",
"شود",
"یک",
"دو",
"وی",
"عشق",
"چشم",
"جهان",
"اندر",
"الله",
"خویش",
"آب",
"گل",
"پیش",
"آمد",
"کار",
"دارد",
"روز",
"باز",
"کن",
"دیده",
"یا",
"یکی",
"همی",
"راه",
"پس",
"خاک",
"آید",
"باد",
"کس",
"خون",
"غم",
"ایشان",
"جز",
"شب",
"کرده",
"نمی",
"کز",
"سخن",
"کسی",
"پر",
"آتش",
"هست",
"ام",
"عالم",
"هیچ",
"حق",
"کی",
"صد",
"بهر",
"شاه",
"فی",
"چنین",
"لب",
"ترا",
"ره",
"سوی",
"بس",
"پای",
"ها",
"اند",
"تن",
"ی",
"گردد",
"ملک",
"داد",
"خوش",
"علی",
"میان",
"دم",
"زمین",
"زلف",
"چنان",
"کنم",
"نبود",
"یار",
"گشت",
"دیگر",
"باید",
"دگر",
"درد",
"خانه",
"چند",
"تر",
"جای",
"همچو",
"بار",
"ماه",
"خلق",
"نفس",
"دوست",
"شده",
"لا",
"دین",
"زین",
"نام",
"دور",
"مهر",
"بد",
"زان",
"پی",
"نور",
"گرد",
"رخ",
"مگر",
"آنکه",
"نظر",
"حال",
"رفت",
"دلم",
"کنی",
"اهل",
"فلک",
"تیغ",
"برد",
"بدان",
"ست",
"ازین",
"عقل",
"دید",
"مرد",
"وز",
"زبان",
"زیر",
"گوید",
"هزار",
"خدا",
"آفتاب",
"کجا",
"عمر",
"دهد",
"پرده",
"گه",
"حسن",
"درین",
"چرخ",
"آخر",
"دارم",
"خواهد",
"خورشید",
"نیز",
"بیرون",
"خواب",
"های",
"بنده",
"چرا",
"راست",
"کان",
"برون",
"خدای",
"رو",
"جمله",
"قال",
"نباشد",
"زر",
"علم",
"شمع",
"سرو",
];
wordCounts = wordCounts.Where(w => stopWords.Contains(w.Word)).Take(100).ToArray();
}
return new PartialViewResult()
{
ViewName = "_CategoryWordsCountPartial",