summaryrefslogtreecommitdiff
path: root/bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js')
-rw-r--r--bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js b/bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js
new file mode 100644
index 00000000..752c28b4
--- /dev/null
+++ b/bin/wiki/ImportarDesdeURL/node_modules/metascraper/src/index.js
@@ -0,0 +1,30 @@
+'use strict'
+
+const { isUrl } = require('@metascraper/helpers')
+const whoops = require('whoops')
+
+const mergeRules = require('./merge-rules')
+const loadRules = require('./load-rules')
+const loadHTML = require('./load-html')
+const getData = require('./get-data')
+
+const MetascraperError = whoops('MetascraperError')
+
+module.exports = rules => {
+ const loadedRules = loadRules(rules)
+ return async ({ url, html, rules: inlineRules, escape = true } = {}) => {
+ if (!isUrl(url)) {
+ throw new MetascraperError({
+ message: 'Need to provide a valid URL.',
+ code: 'INVALID_URL'
+ })
+ }
+ const htmlDom = loadHTML(html)
+ return getData({
+ url,
+ escape,
+ htmlDom,
+ rules: mergeRules(inlineRules, loadedRules)
+ })
+ }
+}