@memberjunction/content-autotagging 3.4.0 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +109 -213
- package/dist/CloudStorage/generic/CloudStorageBase.d.ts +28 -0
- package/dist/CloudStorage/generic/CloudStorageBase.d.ts.map +1 -0
- package/dist/{src/CloudStorage → CloudStorage}/generic/CloudStorageBase.js +6 -16
- package/dist/CloudStorage/generic/CloudStorageBase.js.map +1 -0
- package/dist/CloudStorage/index.d.ts +3 -0
- package/dist/CloudStorage/index.d.ts.map +1 -0
- package/dist/CloudStorage/index.js +3 -0
- package/dist/CloudStorage/index.js.map +1 -0
- package/dist/{src/CloudStorage → CloudStorage}/providers/AutotagAzureBlob.d.ts +6 -4
- package/dist/CloudStorage/providers/AutotagAzureBlob.d.ts.map +1 -0
- package/dist/{src/CloudStorage → CloudStorage}/providers/AutotagAzureBlob.js +17 -22
- package/dist/CloudStorage/providers/AutotagAzureBlob.js.map +1 -0
- package/dist/Core/generic/AutotagBase.d.ts.map +1 -0
- package/dist/Core/generic/AutotagBase.js +3 -0
- package/dist/Core/generic/AutotagBase.js.map +1 -0
- package/dist/Core/index.d.ts +2 -0
- package/dist/Core/index.d.ts.map +1 -0
- package/dist/Core/index.js +2 -0
- package/dist/Core/index.js.map +1 -0
- package/dist/Engine/generic/AutotagBaseEngine.d.ts +131 -0
- package/dist/Engine/generic/AutotagBaseEngine.d.ts.map +1 -0
- package/dist/{src/Engine → Engine}/generic/AutotagBaseEngine.js +133 -73
- package/dist/Engine/generic/AutotagBaseEngine.js.map +1 -0
- package/dist/Engine/generic/content.types.d.ts.map +1 -0
- package/dist/Engine/generic/content.types.js +7 -0
- package/dist/Engine/generic/content.types.js.map +1 -0
- package/dist/Engine/generic/process.types.d.ts.map +1 -0
- package/dist/Engine/generic/process.types.js +7 -0
- package/dist/Engine/generic/process.types.js.map +1 -0
- package/dist/Engine/index.d.ts +4 -0
- package/dist/Engine/index.d.ts.map +1 -0
- package/dist/Engine/index.js +4 -0
- package/dist/Engine/index.js.map +1 -0
- package/dist/{src/Entity → Entity}/generic/AutotagEntity.d.ts +2 -2
- package/dist/Entity/generic/AutotagEntity.d.ts.map +1 -0
- package/dist/{src/Entity → Entity}/generic/AutotagEntity.js +16 -19
- package/dist/Entity/generic/AutotagEntity.js.map +1 -0
- package/dist/Entity/index.d.ts +2 -0
- package/dist/Entity/index.d.ts.map +1 -0
- package/dist/Entity/index.js +2 -0
- package/dist/Entity/index.js.map +1 -0
- package/dist/LocalFileSystem/generic/AutotagLocalFileSystem.d.ts +39 -0
- package/dist/LocalFileSystem/generic/AutotagLocalFileSystem.d.ts.map +1 -0
- package/dist/{src/LocalFileSystem → LocalFileSystem}/generic/AutotagLocalFileSystem.js +46 -30
- package/dist/LocalFileSystem/generic/AutotagLocalFileSystem.js.map +1 -0
- package/dist/LocalFileSystem/index.d.ts +2 -0
- package/dist/LocalFileSystem/index.d.ts.map +1 -0
- package/dist/LocalFileSystem/index.js +2 -0
- package/dist/LocalFileSystem/index.js.map +1 -0
- package/dist/RSSFeed/generic/AutotagRSSFeed.d.ts +30 -0
- package/dist/RSSFeed/generic/AutotagRSSFeed.d.ts.map +1 -0
- package/dist/{src/RSSFeed → RSSFeed}/generic/AutotagRSSFeed.js +43 -34
- package/dist/RSSFeed/generic/AutotagRSSFeed.js.map +1 -0
- package/dist/RSSFeed/generic/RSS.types.d.ts.map +1 -0
- package/dist/RSSFeed/generic/RSS.types.js +3 -0
- package/dist/RSSFeed/generic/RSS.types.js.map +1 -0
- package/dist/RSSFeed/index.d.ts +3 -0
- package/dist/RSSFeed/index.d.ts.map +1 -0
- package/dist/RSSFeed/index.js +3 -0
- package/dist/RSSFeed/index.js.map +1 -0
- package/dist/Websites/generic/AutotagWebsite.d.ts +85 -0
- package/dist/Websites/generic/AutotagWebsite.d.ts.map +1 -0
- package/dist/{src/Websites → Websites}/generic/AutotagWebsite.js +103 -72
- package/dist/Websites/generic/AutotagWebsite.js.map +1 -0
- package/dist/Websites/index.d.ts +2 -0
- package/dist/Websites/index.d.ts.map +1 -0
- package/dist/Websites/index.js +2 -0
- package/dist/Websites/index.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/package.json +21 -20
- package/dist/src/CloudStorage/generic/CloudStorageBase.d.ts +0 -16
- package/dist/src/CloudStorage/generic/CloudStorageBase.d.ts.map +0 -1
- package/dist/src/CloudStorage/generic/CloudStorageBase.js.map +0 -1
- package/dist/src/CloudStorage/index.d.ts +0 -3
- package/dist/src/CloudStorage/index.d.ts.map +0 -1
- package/dist/src/CloudStorage/index.js +0 -19
- package/dist/src/CloudStorage/index.js.map +0 -1
- package/dist/src/CloudStorage/providers/AutotagAzureBlob.d.ts.map +0 -1
- package/dist/src/CloudStorage/providers/AutotagAzureBlob.js.map +0 -1
- package/dist/src/Core/generic/AutotagBase.d.ts.map +0 -1
- package/dist/src/Core/generic/AutotagBase.js +0 -7
- package/dist/src/Core/generic/AutotagBase.js.map +0 -1
- package/dist/src/Core/index.d.ts +0 -2
- package/dist/src/Core/index.d.ts.map +0 -1
- package/dist/src/Core/index.js +0 -18
- package/dist/src/Core/index.js.map +0 -1
- package/dist/src/Engine/generic/AutotagBaseEngine.d.ts +0 -52
- package/dist/src/Engine/generic/AutotagBaseEngine.d.ts.map +0 -1
- package/dist/src/Engine/generic/AutotagBaseEngine.js.map +0 -1
- package/dist/src/Engine/generic/content.types.d.ts.map +0 -1
- package/dist/src/Engine/generic/content.types.js +0 -38
- package/dist/src/Engine/generic/content.types.js.map +0 -1
- package/dist/src/Engine/generic/process.types.d.ts.map +0 -1
- package/dist/src/Engine/generic/process.types.js +0 -33
- package/dist/src/Engine/generic/process.types.js.map +0 -1
- package/dist/src/Engine/index.d.ts +0 -4
- package/dist/src/Engine/index.d.ts.map +0 -1
- package/dist/src/Engine/index.js +0 -20
- package/dist/src/Engine/index.js.map +0 -1
- package/dist/src/Entity/generic/AutotagEntity.d.ts.map +0 -1
- package/dist/src/Entity/generic/AutotagEntity.js.map +0 -1
- package/dist/src/Entity/index.d.ts +0 -2
- package/dist/src/Entity/index.d.ts.map +0 -1
- package/dist/src/Entity/index.js +0 -18
- package/dist/src/Entity/index.js.map +0 -1
- package/dist/src/LocalFileSystem/generic/AutotagLocalFileSystem.d.ts +0 -20
- package/dist/src/LocalFileSystem/generic/AutotagLocalFileSystem.d.ts.map +0 -1
- package/dist/src/LocalFileSystem/generic/AutotagLocalFileSystem.js.map +0 -1
- package/dist/src/LocalFileSystem/index.d.ts +0 -2
- package/dist/src/LocalFileSystem/index.d.ts.map +0 -1
- package/dist/src/LocalFileSystem/index.js +0 -18
- package/dist/src/LocalFileSystem/index.js.map +0 -1
- package/dist/src/RSSFeed/generic/AutotagRSSFeed.d.ts +0 -19
- package/dist/src/RSSFeed/generic/AutotagRSSFeed.d.ts.map +0 -1
- package/dist/src/RSSFeed/generic/AutotagRSSFeed.js.map +0 -1
- package/dist/src/RSSFeed/generic/RSS.types.d.ts.map +0 -1
- package/dist/src/RSSFeed/generic/RSS.types.js +0 -17
- package/dist/src/RSSFeed/generic/RSS.types.js.map +0 -1
- package/dist/src/RSSFeed/index.d.ts +0 -3
- package/dist/src/RSSFeed/index.d.ts.map +0 -1
- package/dist/src/RSSFeed/index.js +0 -19
- package/dist/src/RSSFeed/index.js.map +0 -1
- package/dist/src/Websites/generic/AutotagWebsite.d.ts +0 -33
- package/dist/src/Websites/generic/AutotagWebsite.d.ts.map +0 -1
- package/dist/src/Websites/generic/AutotagWebsite.js.map +0 -1
- package/dist/src/Websites/index.d.ts +0 -2
- package/dist/src/Websites/index.d.ts.map +0 -1
- package/dist/src/Websites/index.js +0 -18
- package/dist/src/Websites/index.js.map +0 -1
- package/dist/src/index.d.ts +0 -7
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -25
- package/dist/src/index.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{src/Core → Core}/generic/AutotagBase.d.ts +0 -0
- /package/dist/{src/Engine → Engine}/generic/content.types.d.ts +0 -0
- /package/dist/{src/Engine → Engine}/generic/process.types.d.ts +0 -0
- /package/dist/{src/RSSFeed → RSSFeed}/generic/RSS.types.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutotagRSSFeed.js","sourceRoot":"","sources":["../../../src/RSSFeed/generic/AutotagRSSFeed.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RSS.types.d.ts","sourceRoot":"","sources":["../../../src/RSSFeed/generic/RSS.types.ts"],"names":[],"mappings":"AAAA,qBAAa,OAAO;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RSS.types.js","sourceRoot":"","sources":["../../../src/RSSFeed/generic/RSS.types.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,OAAO;CAWnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/RSSFeed/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/RSSFeed/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { AutotagBase } from '../../Core/index.js';
|
|
2
|
+
import { ContentSourceParams } from '../../Engine/index.js';
|
|
3
|
+
import { UserInfo } from '@memberjunction/core';
|
|
4
|
+
import { ContentSourceEntity, ContentItemEntity } from '@memberjunction/core-entities';
|
|
5
|
+
import * as cheerio from 'cheerio';
|
|
6
|
+
export declare class AutotagWebsite extends AutotagBase {
|
|
7
|
+
private contextUser;
|
|
8
|
+
private engine;
|
|
9
|
+
protected contentSourceTypeID: string;
|
|
10
|
+
protected CrawlOtherSitesInTopLevelDomain: boolean;
|
|
11
|
+
protected CrawlSitesInLowerLevelDomain: boolean;
|
|
12
|
+
protected MaxDepth: number;
|
|
13
|
+
protected RootURL: string;
|
|
14
|
+
protected URLPattern: string;
|
|
15
|
+
protected visitedURLs: Set<string>;
|
|
16
|
+
constructor();
|
|
17
|
+
protected getContextUser(): UserInfo;
|
|
18
|
+
/**
|
|
19
|
+
* Implemented abstract method from the AutotagBase class. that runs the entire autotagging process. This method is the entry point for the autotagging process.
|
|
20
|
+
* It initializes the connection, retrieves the content sources corresponding to the content source type, sets the content items that we want to process,
|
|
21
|
+
* extracts and processes the text, and sets the results in the database.
|
|
22
|
+
*/
|
|
23
|
+
Autotag(contextUser: UserInfo): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Given a content source, retrieve all content items associated with the content sources.
|
|
26
|
+
* The content items are then processed to determine if they have been modified since the last time they were processed or if they are new content items.
|
|
27
|
+
* @param contentSource
|
|
28
|
+
* @returns
|
|
29
|
+
*/
|
|
30
|
+
SetContentItemsToProcess(contentSources: ContentSourceEntity[]): Promise<ContentItemEntity[]>;
|
|
31
|
+
/**
|
|
32
|
+
* Given a list of content item links, check if the content item already exists in the database.
|
|
33
|
+
* If the content item exists, check if the content item has been modified since the last time it was processed.
|
|
34
|
+
* If the content item does not exist, create a new content item and add it to the list of content items to process.
|
|
35
|
+
* @param contentItemLinks
|
|
36
|
+
* @param contentSourceParams
|
|
37
|
+
* @param contextUser
|
|
38
|
+
* @returns
|
|
39
|
+
*/
|
|
40
|
+
protected SetNewAndModifiedContentItems(contentItemLinks: string[], contentSourceParams: ContentSourceParams, contextUser: UserInfo): Promise<ContentItemEntity[]>;
|
|
41
|
+
fetchPageContent(url: string): Promise<string>;
|
|
42
|
+
getTextWithLineBreaks(element: any, $: cheerio.CheerioAPI): string;
|
|
43
|
+
/**
|
|
44
|
+
* Given a URL, this function extracts text from a webpage.
|
|
45
|
+
* @param url
|
|
46
|
+
* @returns The text extracted from the webpage
|
|
47
|
+
*/
|
|
48
|
+
parseWebPage(url: string): Promise<string>;
|
|
49
|
+
/**
|
|
50
|
+
* Given a root URL that corresponds to a content source, retrieve all the links in accordance to the crawl settings.
|
|
51
|
+
* If the crawl settings are set to crawl other sites in the top level domain, then all links in the top level domain will be retrieved.
|
|
52
|
+
* If the crawl settings are set to crawl sites in lower level domains, then function is recursively called to retrieve all links in the lower level domains.
|
|
53
|
+
* @param url
|
|
54
|
+
* @returns
|
|
55
|
+
*/
|
|
56
|
+
protected getAllLinksFromContentSource(url: string, rootURL: string, regex: RegExp): Promise<string[]>;
|
|
57
|
+
/**
|
|
58
|
+
* For a given URL, retrieves all other links at that top level domain.
|
|
59
|
+
* @param url
|
|
60
|
+
* @param rootURL
|
|
61
|
+
* @param visitedURLs
|
|
62
|
+
* @returns
|
|
63
|
+
*/
|
|
64
|
+
protected getTopLevelLinks(url: string, rootURL: string): Promise<void>;
|
|
65
|
+
/**
|
|
66
|
+
* Simple check to see if the URL is at the highest level domain.
|
|
67
|
+
* @param url
|
|
68
|
+
* @returns
|
|
69
|
+
*/
|
|
70
|
+
protected isHighestDomain(url: string): boolean;
|
|
71
|
+
protected getBasePath(url: string): string;
|
|
72
|
+
protected getPathName(url: string): string;
|
|
73
|
+
protected urlIsValid(url: string): Promise<boolean>;
|
|
74
|
+
/**
|
|
75
|
+
* For a given URL, retrieves all links at lower level domains up to the specified crawl depth.
|
|
76
|
+
* @param url
|
|
77
|
+
* @param rootURL
|
|
78
|
+
* @param crawlDepth
|
|
79
|
+
* @param visitedURLs
|
|
80
|
+
* @returns
|
|
81
|
+
*/
|
|
82
|
+
protected getLowerLevelLinks(url: string, rootURL: string, crawlDepth: number, scrapedURLs: Set<string>, regex: RegExp): Promise<Set<string>>;
|
|
83
|
+
protected delay(ms: number): Promise<unknown>;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=AutotagWebsite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutotagWebsite.d.ts","sourceRoot":"","sources":["../../../src/Websites/generic/AutotagWebsite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAqB,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEtE,OAAO,EAAE,QAAQ,EAAqB,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvF,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAMnC,qBACa,cAAe,SAAQ,WAAW;IAC3C,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,MAAM,CAAoB;IAClC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACrC,SAAS,CAAC,+BAA+B,EAAE,OAAO,CAAC;IACnD,SAAS,CAAC,4BAA4B,EAAE,OAAO,CAAC;IAChD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;;IAQnC,SAAS,CAAC,cAAc,IAAI,QAAQ;IAIpC;;;;OAIG;IACU,OAAO,CAAC,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAS1D;;;;;OAKG;IACU,wBAAwB,CAAC,cAAc,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAoD1G;;;;;;;;OAQG;cACa,6BAA6B,CAAC,gBAAgB,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAsE3J,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKpD,qBAAqB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,UAAU,GAAG,MAAM;IAgBzE;;;;OAIG;IACU,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAavD;;;;;;OAMG;cACa,4BAA4B,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAa5G;;;;;;OAMG;cACa,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmC7E;;;;OAIG;IACH,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAW/C,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAW1C,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;cAa1B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWzD;;;;;;;OAOG;cACa,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;cA+CnI,KAAK,CAAC,EAAE,EAAE,MAAM;CAGnC"}
|
|
@@ -1,68 +1,35 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
19
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
20
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
21
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
22
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
23
6
|
};
|
|
24
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
-
if (mod && mod.__esModule) return mod;
|
|
26
|
-
var result = {};
|
|
27
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
-
__setModuleDefault(result, mod);
|
|
29
|
-
return result;
|
|
30
|
-
};
|
|
31
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
32
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
33
9
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
const axios_1 = __importDefault(require("axios"));
|
|
45
|
-
const url_1 = require("url");
|
|
46
|
-
const dotenv_1 = __importDefault(require("dotenv"));
|
|
47
|
-
dotenv_1.default.config();
|
|
48
|
-
let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
49
|
-
contextUser;
|
|
50
|
-
engine;
|
|
51
|
-
contentSourceTypeID;
|
|
52
|
-
CrawlOtherSitesInTopLevelDomain;
|
|
53
|
-
CrawlSitesInLowerLevelDomain;
|
|
54
|
-
MaxDepth;
|
|
55
|
-
RootURL;
|
|
56
|
-
URLPattern;
|
|
57
|
-
visitedURLs;
|
|
10
|
+
import { AutotagBase } from '../../Core/index.js';
|
|
11
|
+
import { AutotagBaseEngine } from '../../Engine/index.js';
|
|
12
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
13
|
+
import { Metadata, RunView } from '@memberjunction/core';
|
|
14
|
+
import * as cheerio from 'cheerio';
|
|
15
|
+
import axios from 'axios';
|
|
16
|
+
import { URL } from 'url';
|
|
17
|
+
import dotenv from 'dotenv';
|
|
18
|
+
dotenv.config({ quiet: true });
|
|
19
|
+
let AutotagWebsite = class AutotagWebsite extends AutotagBase {
|
|
58
20
|
constructor() {
|
|
59
21
|
super();
|
|
60
|
-
this.engine =
|
|
22
|
+
this.engine = AutotagBaseEngine.Instance;
|
|
61
23
|
this.visitedURLs = new Set();
|
|
62
24
|
}
|
|
63
25
|
getContextUser() {
|
|
64
26
|
return this.contextUser;
|
|
65
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Implemented abstract method from the AutotagBase class. that runs the entire autotagging process. This method is the entry point for the autotagging process.
|
|
30
|
+
* It initializes the connection, retrieves the content sources corresponding to the content source type, sets the content items that we want to process,
|
|
31
|
+
* extracts and processes the text, and sets the results in the database.
|
|
32
|
+
*/
|
|
66
33
|
async Autotag(contextUser) {
|
|
67
34
|
this.contextUser = contextUser;
|
|
68
35
|
this.contentSourceTypeID = await this.engine.setSubclassContentSourceType('Website', this.contextUser);
|
|
@@ -70,11 +37,19 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
70
37
|
const contentItemsToProcess = await this.SetContentItemsToProcess(contentSources);
|
|
71
38
|
await this.engine.ExtractTextAndProcessWithLLM(contentItemsToProcess, this.contextUser);
|
|
72
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Given a content source, retrieve all content items associated with the content sources.
|
|
42
|
+
* The content items are then processed to determine if they have been modified since the last time they were processed or if they are new content items.
|
|
43
|
+
* @param contentSource
|
|
44
|
+
* @returns
|
|
45
|
+
*/
|
|
73
46
|
async SetContentItemsToProcess(contentSources) {
|
|
74
47
|
const contentItemsToProcess = [];
|
|
48
|
+
// If content source parameters were provided, set them. Otherwise, use the default values.
|
|
75
49
|
for (const contentSource of contentSources) {
|
|
76
50
|
const contentSourceParamsMap = await this.engine.getContentSourceParams(contentSource, this.contextUser);
|
|
77
51
|
if (contentSourceParamsMap) {
|
|
52
|
+
// Override defaults with content source specific params
|
|
78
53
|
contentSourceParamsMap.forEach((value, key) => {
|
|
79
54
|
if (key in this) {
|
|
80
55
|
this[key] = value;
|
|
@@ -90,8 +65,11 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
90
65
|
URL: contentSource.URL
|
|
91
66
|
};
|
|
92
67
|
try {
|
|
68
|
+
// All content items associated with the content source
|
|
93
69
|
const startURL = contentSourceParams.URL;
|
|
70
|
+
// root url should be set to this.RootURL if it exists, otherwise it should be set to the base path of the startURL.
|
|
94
71
|
const rootURL = this.RootURL ? this.RootURL : this.getBasePath(startURL);
|
|
72
|
+
// regex should be set to this.URLPattern if it exists, otherwise it should be set to match any URL.
|
|
95
73
|
const regex = this.URLPattern && new RegExp(this.URLPattern) || new RegExp('.*');
|
|
96
74
|
const allContentItemLinks = await this.getAllLinksFromContentSource(startURL, rootURL, regex);
|
|
97
75
|
const contentItems = await this.SetNewAndModifiedContentItems(allContentItemLinks, contentSourceParams, this.contextUser);
|
|
@@ -99,6 +77,7 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
99
77
|
contentItemsToProcess.push(...contentItems);
|
|
100
78
|
}
|
|
101
79
|
else {
|
|
80
|
+
// No content items found to process
|
|
102
81
|
console.log(`No content items found to process for content source: ${contentSource.Get('Name')}`);
|
|
103
82
|
}
|
|
104
83
|
}
|
|
@@ -108,12 +87,21 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
108
87
|
}
|
|
109
88
|
return contentItemsToProcess;
|
|
110
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Given a list of content item links, check if the content item already exists in the database.
|
|
92
|
+
* If the content item exists, check if the content item has been modified since the last time it was processed.
|
|
93
|
+
* If the content item does not exist, create a new content item and add it to the list of content items to process.
|
|
94
|
+
* @param contentItemLinks
|
|
95
|
+
* @param contentSourceParams
|
|
96
|
+
* @param contextUser
|
|
97
|
+
* @returns
|
|
98
|
+
*/
|
|
111
99
|
async SetNewAndModifiedContentItems(contentItemLinks, contentSourceParams, contextUser) {
|
|
112
100
|
const addedContentItems = [];
|
|
113
101
|
for (const contentItemLink of contentItemLinks) {
|
|
114
102
|
try {
|
|
115
103
|
const newHash = await this.engine.getChecksumFromURL(contentItemLink);
|
|
116
|
-
const rv = new
|
|
104
|
+
const rv = new RunView();
|
|
117
105
|
const results = await rv.RunViews([
|
|
118
106
|
{
|
|
119
107
|
EntityName: 'Content Items',
|
|
@@ -129,26 +117,30 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
129
117
|
const contentItemResultsWithChecksum = results[0];
|
|
130
118
|
const contentItemResultsWithURL = results[1];
|
|
131
119
|
if (contentItemResultsWithChecksum.Success && contentItemResultsWithChecksum.Results.length) {
|
|
120
|
+
// We found the checksum so this content item has not changed since we last accessed it, do nothing
|
|
132
121
|
continue;
|
|
133
122
|
}
|
|
134
123
|
else if (contentItemResultsWithURL.Success && contentItemResultsWithURL.Results.length) {
|
|
124
|
+
// This content item already exists, update the hash and last updated date
|
|
135
125
|
const contentItemResult = contentItemResultsWithURL.Results[0];
|
|
136
126
|
const lastStoredHash = contentItemResult.Checksum;
|
|
137
127
|
if (lastStoredHash !== newHash) {
|
|
138
|
-
|
|
128
|
+
// This content item has changed since we last access it, update the hash and last updated date
|
|
129
|
+
const md = new Metadata();
|
|
139
130
|
const contentItem = await md.GetEntityObject('Content Items', this.contextUser);
|
|
140
131
|
contentItem.Load(contentItemResult.ID);
|
|
141
132
|
contentItem.Checksum = newHash;
|
|
142
133
|
contentItem.Text = await this.parseWebPage(contentItemLink);
|
|
143
134
|
await contentItem.Save();
|
|
144
|
-
addedContentItems.push(contentItem);
|
|
135
|
+
addedContentItems.push(contentItem); // Content item was modified, add to list
|
|
145
136
|
}
|
|
146
137
|
}
|
|
147
138
|
else {
|
|
148
|
-
|
|
139
|
+
// This content item does not exist, add it
|
|
140
|
+
const md = new Metadata();
|
|
149
141
|
const contentItem = await md.GetEntityObject('Content Items', this.contextUser);
|
|
150
142
|
contentItem.ContentSourceID = contentSourceParams.contentSourceID;
|
|
151
|
-
contentItem.Name = this.getPathName(contentItemLink);
|
|
143
|
+
contentItem.Name = this.getPathName(contentItemLink); // Will get overwritten by title later if it exists
|
|
152
144
|
contentItem.Description = await this.engine.getContentItemDescription(contentSourceParams, this.contextUser);
|
|
153
145
|
contentItem.ContentTypeID = contentSourceParams.ContentTypeID;
|
|
154
146
|
contentItem.ContentFileTypeID = contentSourceParams.ContentFileTypeID;
|
|
@@ -157,7 +149,7 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
157
149
|
contentItem.URL = contentItemLink;
|
|
158
150
|
contentItem.Text = await this.parseWebPage(contentItemLink);
|
|
159
151
|
await contentItem.Save();
|
|
160
|
-
addedContentItems.push(contentItem);
|
|
152
|
+
addedContentItems.push(contentItem); // Content item was added, add to list
|
|
161
153
|
}
|
|
162
154
|
}
|
|
163
155
|
catch (e) {
|
|
@@ -167,7 +159,7 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
167
159
|
return addedContentItems;
|
|
168
160
|
}
|
|
169
161
|
async fetchPageContent(url) {
|
|
170
|
-
const { data } = await
|
|
162
|
+
const { data } = await axios.get(url);
|
|
171
163
|
return data;
|
|
172
164
|
}
|
|
173
165
|
getTextWithLineBreaks(element, $) {
|
|
@@ -184,6 +176,11 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
184
176
|
}
|
|
185
177
|
return text;
|
|
186
178
|
}
|
|
179
|
+
/**
|
|
180
|
+
* Given a URL, this function extracts text from a webpage.
|
|
181
|
+
* @param url
|
|
182
|
+
* @returns The text extracted from the webpage
|
|
183
|
+
*/
|
|
187
184
|
async parseWebPage(url) {
|
|
188
185
|
try {
|
|
189
186
|
const pageContent = await this.fetchPageContent(url);
|
|
@@ -196,6 +193,13 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
196
193
|
return '';
|
|
197
194
|
}
|
|
198
195
|
}
|
|
196
|
+
/**
|
|
197
|
+
* Given a root URL that corresponds to a content source, retrieve all the links in accordance to the crawl settings.
|
|
198
|
+
* If the crawl settings are set to crawl other sites in the top level domain, then all links in the top level domain will be retrieved.
|
|
199
|
+
* If the crawl settings are set to crawl sites in lower level domains, then function is recursively called to retrieve all links in the lower level domains.
|
|
200
|
+
* @param url
|
|
201
|
+
* @returns
|
|
202
|
+
*/
|
|
199
203
|
async getAllLinksFromContentSource(url, rootURL, regex) {
|
|
200
204
|
try {
|
|
201
205
|
await this.getLowerLevelLinks(url, rootURL, this.MaxDepth, new Set(), regex);
|
|
@@ -207,37 +211,51 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
207
211
|
return [];
|
|
208
212
|
}
|
|
209
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* For a given URL, retrieves all other links at that top level domain.
|
|
216
|
+
* @param url
|
|
217
|
+
* @param rootURL
|
|
218
|
+
* @param visitedURLs
|
|
219
|
+
* @returns
|
|
220
|
+
*/
|
|
210
221
|
async getTopLevelLinks(url, rootURL) {
|
|
211
222
|
if (!this.CrawlOtherSitesInTopLevelDomain) {
|
|
212
223
|
this.visitedURLs.add(url);
|
|
213
224
|
return;
|
|
214
225
|
}
|
|
226
|
+
// If we have already visited this URL, return an empty array
|
|
215
227
|
if (this.visitedURLs.has(url) || !await this.urlIsValid(url) || this.isHighestDomain(url)) {
|
|
216
228
|
return;
|
|
217
229
|
}
|
|
218
230
|
this.visitedURLs.add(url);
|
|
219
231
|
try {
|
|
220
|
-
const { data } = await
|
|
232
|
+
const { data } = await axios.get(url);
|
|
221
233
|
const $ = cheerio.load(data);
|
|
234
|
+
// Get all links on the page for the current URL
|
|
222
235
|
$('a').each((_, element) => {
|
|
223
236
|
const link = $(element).attr('href');
|
|
224
237
|
if (link) {
|
|
225
|
-
const newURL = new
|
|
238
|
+
const newURL = new URL(link, url).href;
|
|
226
239
|
if (newURL.startsWith(rootURL) && !this.visitedURLs.has(newURL)) {
|
|
227
240
|
this.visitedURLs.add(newURL);
|
|
228
241
|
}
|
|
229
242
|
}
|
|
230
243
|
});
|
|
231
|
-
await this.delay(1000);
|
|
244
|
+
await this.delay(1000); // Delay to prevent rate limiting
|
|
232
245
|
}
|
|
233
246
|
catch (e) {
|
|
234
247
|
console.error(`Failed to get links from ${url}`);
|
|
235
248
|
return;
|
|
236
249
|
}
|
|
237
250
|
}
|
|
251
|
+
/**
|
|
252
|
+
* Simple check to see if the URL is at the highest level domain.
|
|
253
|
+
* @param url
|
|
254
|
+
* @returns
|
|
255
|
+
*/
|
|
238
256
|
isHighestDomain(url) {
|
|
239
257
|
try {
|
|
240
|
-
const parsedURL = new
|
|
258
|
+
const parsedURL = new URL(url);
|
|
241
259
|
return parsedURL.pathname === '/' || parsedURL.pathname === '';
|
|
242
260
|
}
|
|
243
261
|
catch (e) {
|
|
@@ -246,17 +264,18 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
246
264
|
}
|
|
247
265
|
}
|
|
248
266
|
getBasePath(url) {
|
|
249
|
-
const parsedURL = new
|
|
267
|
+
const parsedURL = new URL(url);
|
|
250
268
|
const pathSegments = parsedURL.pathname.split('/').filter(segment => segment);
|
|
251
269
|
if (pathSegments.length > 0) {
|
|
252
|
-
pathSegments.pop();
|
|
270
|
+
pathSegments.pop(); //Remove last segment so that we are in the same level domain
|
|
253
271
|
}
|
|
254
272
|
const basePath = parsedURL.origin + '/' + pathSegments.join('/');
|
|
255
273
|
return basePath;
|
|
256
274
|
}
|
|
275
|
+
// Creates a URL from input string and returns the path name in the form abc.com/xyz
|
|
257
276
|
getPathName(url) {
|
|
258
277
|
try {
|
|
259
|
-
const parsedURL = new
|
|
278
|
+
const parsedURL = new URL(url);
|
|
260
279
|
const pathSegments = parsedURL.pathname.split('/').filter(segment => segment);
|
|
261
280
|
const path = parsedURL.origin + '/' + pathSegments.join('/');
|
|
262
281
|
return path;
|
|
@@ -268,7 +287,7 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
268
287
|
}
|
|
269
288
|
async urlIsValid(url) {
|
|
270
289
|
try {
|
|
271
|
-
const response = await
|
|
290
|
+
const response = await axios.head(url);
|
|
272
291
|
return response.status === 200;
|
|
273
292
|
}
|
|
274
293
|
catch (e) {
|
|
@@ -276,32 +295,44 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
276
295
|
return false;
|
|
277
296
|
}
|
|
278
297
|
}
|
|
298
|
+
/**
|
|
299
|
+
* For a given URL, retrieves all links at lower level domains up to the specified crawl depth.
|
|
300
|
+
* @param url
|
|
301
|
+
* @param rootURL
|
|
302
|
+
* @param crawlDepth
|
|
303
|
+
* @param visitedURLs
|
|
304
|
+
* @returns
|
|
305
|
+
*/
|
|
279
306
|
async getLowerLevelLinks(url, rootURL, crawlDepth, scrapedURLs, regex) {
|
|
280
307
|
try {
|
|
281
308
|
console.log(`Scraping ${url}`);
|
|
309
|
+
// If we have already visited this URL, return an empty array
|
|
282
310
|
if (scrapedURLs.has(url) || await this.urlIsValid(url) === false || crawlDepth < 0 || !this.CrawlSitesInLowerLevelDomain) {
|
|
283
311
|
return new Set();
|
|
284
312
|
}
|
|
285
|
-
let combinedLinks = new Set();
|
|
286
|
-
const extractedLinks = new Set();
|
|
287
|
-
const { data } = await
|
|
313
|
+
let combinedLinks = new Set(); // Combined links from the current URL and all lower level URLs
|
|
314
|
+
const extractedLinks = new Set(); // Links extracted from the input URL
|
|
315
|
+
const { data } = await axios.get(url);
|
|
288
316
|
const $ = cheerio.load(data);
|
|
317
|
+
// Get all links on the page for the current URL
|
|
289
318
|
$('a').each((_, element) => {
|
|
290
319
|
const link = $(element).attr('href');
|
|
291
320
|
if (link) {
|
|
292
|
-
const newURL = new
|
|
321
|
+
const newURL = new URL(link, url).href;
|
|
293
322
|
if (newURL.startsWith(rootURL) && newURL !== url && !this.visitedURLs.has(newURL) && regex.test(newURL)) {
|
|
294
323
|
extractedLinks.add(newURL);
|
|
295
324
|
this.visitedURLs.add(newURL);
|
|
296
325
|
}
|
|
297
326
|
}
|
|
298
327
|
});
|
|
299
|
-
await this.delay(1000);
|
|
328
|
+
await this.delay(1000); // Delay to prevent rate limiting
|
|
300
329
|
scrapedURLs.add(url);
|
|
330
|
+
// If we are at the depth limit, return the current set of URLs and don't recurse
|
|
301
331
|
if (crawlDepth === 0) {
|
|
302
332
|
return extractedLinks;
|
|
303
333
|
}
|
|
304
334
|
for (const subLink of extractedLinks) {
|
|
335
|
+
//console.log(`Adding ${subLink}`);
|
|
305
336
|
const lowerLevelLinks = await this.getLowerLevelLinks(subLink, rootURL, crawlDepth - 1, scrapedURLs, regex);
|
|
306
337
|
combinedLinks = new Set([...extractedLinks, ...lowerLevelLinks]);
|
|
307
338
|
}
|
|
@@ -316,9 +347,9 @@ let AutotagWebsite = class AutotagWebsite extends Core_1.AutotagBase {
|
|
|
316
347
|
return new Promise(resolve => setTimeout(resolve, ms));
|
|
317
348
|
}
|
|
318
349
|
};
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
(0, global_1.RegisterClass)(Core_1.AutotagBase, 'AutotagWebsite'),
|
|
350
|
+
AutotagWebsite = __decorate([
|
|
351
|
+
RegisterClass(AutotagBase, 'AutotagWebsite'),
|
|
322
352
|
__metadata("design:paramtypes", [])
|
|
323
353
|
], AutotagWebsite);
|
|
354
|
+
export { AutotagWebsite };
|
|
324
355
|
//# sourceMappingURL=AutotagWebsite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AutotagWebsite.js","sourceRoot":"","sources":["../../../src/Websites/generic/AutotagWebsite.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Websites/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Websites/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAA"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './Core/index.js';
|
|
2
|
+
export * from './Engine/index.js';
|
|
3
|
+
export * from './LocalFileSystem/index.js';
|
|
4
|
+
export * from './RSSFeed/index.js';
|
|
5
|
+
export * from './Websites/index.js';
|
|
6
|
+
export * from './CloudStorage/index.js';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './Core/index.js';
|
|
2
|
+
export * from './Engine/index.js';
|
|
3
|
+
export * from './LocalFileSystem/index.js';
|
|
4
|
+
export * from './RSSFeed/index.js';
|
|
5
|
+
export * from './Websites/index.js';
|
|
6
|
+
export * from './CloudStorage/index.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAA"}
|