All Projects → philgyford → daily-paper

philgyford / daily-paper

Licence: other
For viewing a daily issue of the Guardian and Observer newspapers. `main` branch should be stable, current work is in `dev` branch.

Programming Languages

javascript
184084 projects - #8 most used programming language
python
139335 projects - #7 most used programming language
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to daily-paper

newspaper3 usage overview
This repository provides usage examples for the Python module Newspaper3k.
Stars: ✭ 78 (+239.13%)
Mutual labels:  news, newspaper
dispatch
A publishing platform for modern newspapers.
Stars: ✭ 62 (+169.57%)
Mutual labels:  news, newspaper
Briefly
source based news in short : Winner @MumbaiHackathon 2018
Stars: ✭ 35 (+52.17%)
Mutual labels:  news, newspaper
PressCenters.com
News aggregator for the press releases of the Bulgarian government sites written in ASP.NET Core
Stars: ✭ 91 (+295.65%)
Mutual labels:  news
JARVIS
Jarvis is a simple Chatbot with a GUI capable of chatting and retrieving information and daily news from the internet for it's user using python.
Stars: ✭ 49 (+113.04%)
Mutual labels:  news
termux-snippets
An integrated tool and a collection of snippets which helps in the various aspects of the terminal.
Stars: ✭ 28 (+21.74%)
Mutual labels:  news
Online-News-Portal-with-Django
Daily News For You is an online news portal developed by Django and SQLite
Stars: ✭ 45 (+95.65%)
Mutual labels:  news
flutter news app
Simple and modern news app that incorporates REST API (newsapi.org), all built entirely with Flutter. 🚀
Stars: ✭ 69 (+200%)
Mutual labels:  news
News-API-Kotlin
Access the News API with Kotlin.
Stars: ✭ 35 (+52.17%)
Mutual labels:  news
coronastats
A simple web app which shows updates about COVID-19
Stars: ✭ 18 (-21.74%)
Mutual labels:  news
File-Maker
Generate data files for Wii Channels that have the latest news, forecast data, etc.
Stars: ✭ 65 (+182.61%)
Mutual labels:  news
civic-scraper
Tools for downloading agendas, minutes and other documents produced by local government
Stars: ✭ 21 (-8.7%)
Mutual labels:  news
flutter redux
A Flutter Starter Application
Stars: ✭ 25 (+8.7%)
Mutual labels:  news
HungryHippo
🦛 scrapes websites and generates rss feeds
Stars: ✭ 33 (+43.48%)
Mutual labels:  news
HeadLines
HeadLines is a 📰 news app that delivers you with the latest news. It has interactive UI and easy to use. The app can be scrolled offline to watch your bookmarked news. Give this app a try and let me know.
Stars: ✭ 16 (-30.43%)
Mutual labels:  news
gosquito
gosquito ("go" + "mosquito") is a pluggable tool for data gathering, data processing and data transmitting to various destinations.
Stars: ✭ 25 (+8.7%)
Mutual labels:  news
NewsHub
News Hub display news of different category (Entertainment, Business, International, Sports, Medical, Technology, Global) and news can be saved as bookmark
Stars: ✭ 16 (-30.43%)
Mutual labels:  news
Laosheng.top
老生常谈,节约您的搜寻时间。Laosheng.top 中国新闻云媒体,中央外宣与一带一路云媒体,五大洲的报纸、电视、通讯社;The Belt and Road Cloud Media。 解放军微博阵列,明星微博粉丝榜。中央有关部门大全,政府政协人大两院。中国千县地名图,联合国有关部门。 大萌望海楼,找法不用愁。中国法律体系概览,大萌法律读本。 老生常谈排行榜,难搜到的好网站。LSIP 大规模集成网页。😤
Stars: ✭ 21 (-8.7%)
Mutual labels:  newspaper
covid19.swift
🌐 Small iOS app to show some COVID-19 health, data, news and tweets
Stars: ✭ 25 (+8.7%)
Mutual labels:  news
extractnet
A Dragnet that also extract author, headline, date, keywords from context
Stars: ✭ 52 (+126.09%)
Mutual labels:  news

Daily Paper

An interface for viewing a daily issue of the Guardian and Observer newspapers.
Using the Guardian Open Platform.
As used at Today's Guardian.

Introduction

This code consists of two main things:

  • A Python script which fetches the day's newspaper content from the Open Platform and saves each article as a separate HTML file locally.
  • An index.html file which uses JavaScript and CSS to display those HTML files.

The Python script should be run at least once per day, with the Guardian/Observer's daily content rolling over roughly around midnight, UK time. The list of content continues to change, so it's worth having the script run every hour or so for a while (but not all day, or you'll hit daily API limits). Running the script subsequent times in a day will update/replace any existing files.

Only one day's worth of content is saved at a time, with older days being deleted (the API only allows for you to keep content for 24 hours). Each day's content is stored in a dated directory within the archive/ directory.

Requirements

Uses Python 3.7.

Install the required modules using pipenv:

$ pipenv install

Or pip:

$ pip install -r requirements.txt

The JavaScript requires jQuery (which is included).

Issues

There are various known issues/enhancements/proposals listed on the project's Issues page.

The site should work fine in most desktop web browsers, and not too bad on iPhone/iPad/iPod Touch. I've never used it on an Android device.

Installation

  1. Get an API key for the Guardian Open Platform.

  2. Install the python modules.

  3. Make the daily-paper/public/ directory readable from the web. You can move it elsewhere without breaking the Python script, although I guess that will confuse Git. Or you could symlink it to somewhere appropriate.

  4. Copy daily-paper/scripts/scraper-example.cfg to daily-paper/scripts/scraper.cfg.

  5. Edit scraper.cfg and add:

    • Your API key.
    • The path to the directory where you want the dated folders for saved HTML files to be kept. This should be called archive and be within the project's public directory, at the same level as index.html.
    • If the verbose setting is left to 1, you will see a little debugging output when the script runs, including which articles have incomplete data.
  6. Run the daily-paper/scripts/scraper.py script. This should leave you with a dated directory in the archive directory you specified in the config file. It should contain an HTML file for every article from today's paper.

  7. View public/ in your web browser. You should be able to read today's paper. If you're not using an actual web server, you should be able to load the public/index.html file itself in your browser and still use the site.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].