Mercury Parser - Extracting content from chaos #parser #url #html #extractor
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Go to file
Adam Pash 76d333f0be
deps: upgrade (#218)
5 years ago
.circleci deps: upgrade (#218) 5 years ago
dist deps: upgrade (#218) 5 years ago
fixtures fix: failing fetchResource test (#187) 5 years ago
scripts deps: upgrade (#218) 5 years ago
src deps: upgrade (#218) 5 years ago
.agignore chore: renamed iris to mercury 8 years ago
.all-contributorsrc fix: increased avatar size 8 years ago
.babelrc deps: upgrade (#218) 5 years ago
.eslintignore Feat: browser support (#19) 8 years ago
.eslintrc deps: upgrade (#218) 5 years ago
.gitattributes fix: i put a bad comment in .gitattributes (#125) 7 years ago
.gitignore dx: comment on PRs when fixtures have been added/changed (#192) 5 years ago
.nvmrc chore: update node and some deps (#209) 5 years ago
.prettierrc chore: update node and some deps (#209) 5 years ago
CHANGELOG.md release: 1.0.13 (#183) 6 years ago
CODE_OF_CONDUCT.md docs: add code of conduct (#204) 5 years ago
NOTES.md feat: generator for custom parsers and some documentation 8 years ago
README.md Feat: improving ci (#16) 8 years ago
RELEASE.md docs: document release process (#186) 5 years ago
appveyor.yml Feat: improving ci (#16) 8 years ago
karma.conf.js deps: upgrade (#218) 5 years ago
package.json deps: upgrade (#218) 5 years ago
preview feat: preview with optional rebuild (#36) 8 years ago
rollup.config.js deps: upgrade (#218) 5 years ago
rollup.config.web.js deps: upgrade (#218) 5 years ago
score-move chore: refactored and linted 8 years ago
yarn.lock deps: upgrade (#218) 5 years ago

README.md

Mercury Parser - Extracting content from chaos

CircleCI Build status

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

💻