Mercury Parser - Extracting content from chaos #parser #url #html #extractor
Go to file
2016-10-27 10:19:21 -07:00
dist feat: allowing extractors to support multiple domains 2016-10-27 09:20:53 -07:00
fixtures feat: custom medium extractor 2016-10-27 08:47:25 -07:00
scripts feat: generator generates potential selectors for all custom selectable fields 2016-10-10 15:57:47 -07:00
src making all.js export a generic function to decrease possiblity of error 2016-10-27 10:19:21 -07:00
.agignore chore: renamed iris to mercury 2016-09-16 13:26:37 -04:00
.all-contributorsrc fix: increased avatar size 2016-10-26 15:44:49 -07:00
.babelrc making all.js export a generic function to decrease possiblity of error 2016-10-27 10:19:21 -07:00
.eslintignore chore: refactored and linted 2016-09-13 15:22:27 -04:00
.eslintrc feat: custom parser + generator + detailed readme instructions 2016-09-30 12:26:25 -04:00
.gitignore feat: custom parser + generator + detailed readme instructions 2016-09-30 12:26:25 -04:00
NOTES.md feat: generator for custom parsers and some documentation 2016-09-20 10:37:03 -04:00
package.json making all.js export a generic function to decrease possiblity of error 2016-10-27 10:19:21 -07:00
preview feat: custom parser + generator + detailed readme instructions 2016-09-30 12:26:25 -04:00
README.md fix: increased avatar size 2016-10-26 15:44:49 -07:00
rollup.config.js fix: using transform-runtime to avoid babel-polyfill conflicts when used 2016-09-19 11:04:35 -04:00
score-move chore: refactored and linted 2016-09-13 15:22:27 -04:00
test-runner feat: generator for custom parsers and some documentation 2016-09-20 10:37:03 -04:00

Mercury Parser - Extracting content from chaos

The Mercury Parser extracts the bits that humans care about from any URL you give it. That includes article content, titles, authors, published dates, excerpts, lead images, and more.

The Mercury Parser module powers the Mercury Parser API, a free API from Postlight that puts all of this information one API request away..

How? Like this.

import Mercury from 'mercury-parser';

Mercury.parse(url).then(result => console.log(result););

The result looks like this:

{
  "title": "Thunder (mascot)",
  "content": "<div><div><p>This is the content of the page!</div></div>",
  "author": "Wikipedia Contributors",
  "date_published": "2016-09-16T20:56:00.000Z",
  "lead_image_url": null,
  "dek": null,
  "next_page_url": null,
  "url": "https://en.wikipedia.org/wiki/Thunder_(mascot)",
  "domain": "en.wikipedia.org",
  "excerpt": "Thunder Thunder is the stage name for the horse who is the official live animal mascot for the Denver Broncos",
  "word_count": 4677,
  "direction": "ltr",
  "total_pages": 1,
  "rendered_pages": 1
}

If Mercury is unable to find a field, that field will return null.

Contributing

If you'd like to write a custom parser for a site, here's how.

Contributors

All Contributors


Adam Pash

📝 💻 📖 💡

Toy Vano

💻

Drew Bell

💻

Jeremy Mack

💻