Skip to content

Latest commit

 

History

History
93 lines (58 loc) · 2.78 KB

README.md

File metadata and controls

93 lines (58 loc) · 2.78 KB

📰 News-Accumulator

A python automation script to quickly gather and view latest happenings and news information from the web
in a summarised and concise way.

Functionality

API calls to g-news is used to generate lists of news articles based on the search keyword and also extract various other information from it. Then data is scraped from the website of the article selected by the user itself, to get the contents. The data is cleaned and structured to provide a concise output. Also features a convinient menu based interface.

  • Generates a list of relevant articles showing the title and the respective publication agency based on any user given keyword.
  • Select and view the contents of any article(Page Contents).
  • Interactive menu based interface that allows switching between articles or search a new topic.
  • Customization options to extract relevant useful pieces of information from the site.

Technologies Used

  • Requests for handling web server communicatons and sending get requests.
  • Beautiful Soup for parsing the html of the website and derive useful contents as a dom object.
  • xml.dom.minidom to parse the xml string and store it in a structured way as dom object.
  • news api to collect latest news json stream.

Domains

  • CLI-Tools
  • XML-dom
  • APIs
  • Web Scraping
  • Data Science

Requirements

🔗Requirement guidelines for this project


Running Locally


Using a new python virtual environment

Create a virtual environment in the project dirctory env.

python -m venv app

Activate the virtual environment

Windows: app\Scripts\activate

Install all the required packages

$pip install -r requirements.txt

Navigate to the project directory and type command

$python main.py

Usage And Output

Here are some sample run of the program

Run a new keyword search and get a list of articles

 

Select any article to view contents

   

  

Menu to perform various actions


  • [ 2 ] : view another article    [ 3 ] : search another topic

     

  • [ 1 ] : additional info    [ 4 ] : exit