node-gnews
TypeScript icon, indicating that this package has built-in type declarations

1.0.3 • Public • Published

node-gnews

Build Status

A simple node module that loads articles from Google News

Overview

This is an unofficial node module that allows you to easily load articles from Google News via its RSS feed and convert them into JavaScript Object.

Strongly inspired by google-news-rss, but tweaked a bit.

Install

npm install node-gnews --save

or in case you use yarn:

yarn add node-gnews

Usage

Clone this repo and open ./samples to run.

Get headlines

Load headlines and return it as an array.

const Gnews = require('node-gnews').Gnews;
const instance = new Gnews();
 
// Headlines for topics
instance.headlines().then(articles => console.log(articles)); // -> display headlines in U.S.

Get headlines in topic

Load headlines in a certain topic. Visit Google News and you will see SECTIONS on the left sidebar as below.

If you click one, the address should be something like https://news.google.com/news/headlines/section/topic/WORLD?ned=us&hl=en&gl=US. In this case, WORLD would be a topic for the content and you can pass it as a first argument of headlines().

instance.headlines('WORLD').then(articles => console.log(articles)); // -> display headlines of 'World' topic.

Note that topics may not be available on every language. Please make sure that the topic is available on a language you are going to use on a browser.

Search

Search for keywords

instance.search('Nintendo').then(articles => console.log(articles)); // -> Search result

Change Region (and more)

You may pass optional parameters to change region. As a default, the library will load news in the U.S.

For example, if you change the region to Japan on news.google.com, its URL will be

https://news.google.com/news/?ned=jp&hl=ja&gl=JP

Three parameters: 'ned', 'hl' and 'gl' decide which region to load articles from so that you can use it to change the locale.

const Gnews = require('node-gnews').Gnews;
const instance = new Gnews({
  ned: 'jp',
  hl: 'ja',
  gl: 'JP'
}); // Set Japanese as a default
 
instance
  .headlines()
  .then(articles => console.log(articles)); // -> Japanese Headlines
 
instance.search('Doctor Who',{
  ned: 'uk',
  hl: 'en-GB',
  gl: 'GB'
}).then(articles => console.log(articles)); // -> Search "Doctor Who" in U.K.

All the values in the second argument will be used as parameters to load RSS so you may use it for different purposes.

Article Properties

Property Description Example
title title of the article The Last Jedi spoiler talk: Mark Hamill discusses the secrets of Luke Skywalker's return
link link to the article http://ew.com/movies/2017/12/16/the-last-jedi-spoilers-rian-johnson-mark-hamill-luke-skywalker-revelations/
category category of the article More Top Stories
pubDate Date the article was published Sat, 16 Dec 2017 16:00:29 GMT
description HTML to guide related articles Click to see example
publisher Publisher of the article EW.com
fullCoverage Link to the Google News Related Stories https://news.google.com/story/dOHKnaQodeaDspMmZOqoGu4YGQ47M?hl=en&ned=us (expired)
related Array of related stories. Each has title, link and publisher Click to see example
thumbnailUrl Thumbnail image url. Omitted when not available. https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcSzlMagnYwijdaLtdc4MWJopShsC9vRGDh-_LKP9GlJ_ofu6J8OyUFdlebTu4e1JT6mb0_YY7Lw59M

Readme

Keywords

none

Package Sidebar

Install

npm i node-gnews

Weekly Downloads

4

Version

1.0.3

License

MIT

Unpacked Size

202 kB

Total Files

19

Last publish

Collaborators

  • shun_kashiwa