{"id":50312933,"url":"https://github.com/simonefelici/newspy","last_synced_at":"2026-05-28T22:02:29.185Z","repository":{"id":250615522,"uuid":"751784049","full_name":"SimoneFelici/Newspy","owner":"SimoneFelici","description":"A new way to read news articles online!","archived":false,"fork":false,"pushed_at":"2024-08-05T19:53:11.000Z","size":35,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-08-05T23:06:30.131Z","etag":null,"topics":["news","newspy","python","python3","scraping"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SimoneFelici.png","metadata":{"files":{"readme":"README.md","changelog":"newspy.py","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-02T10:17:00.000Z","updated_at":"2024-08-05T19:53:15.000Z","dependencies_parsed_at":"2024-08-05T22:44:18.015Z","dependency_job_id":"69ac9007-ae35-4704-99ab-d1c0f3dd194a","html_url":"https://github.com/SimoneFelici/Newspy","commit_stats":null,"previous_names":["simonefelici/newspy"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SimoneFelici/Newspy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneFelici%2FNewspy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneFelici%2FNewspy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneFelici%2FNewspy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneFelici%2FNewspy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimoneFelici","download_url":"https://codeload.github.com/SimoneFelici/Newspy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimoneFelici%2FNewspy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33627951,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-28T02:00:06.440Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["news","newspy","python","python3","scraping"],"created_at":"2026-05-28T22:02:17.316Z","updated_at":"2026-05-28T22:02:29.159Z","avatar_url":"https://github.com/SimoneFelici.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/ba002e7b-e6ff-44b0-a2fd-330b18b6092a\" alt=\"Cute image made with DALL·E\" align=\"middle\"\u003e\n  \u003cbr\u003e\n  \u003cem\u003eCute image made with DALL·E\u003c/em\u003e\n\u003c/p\u003e\n\n\n# Newspy\n\nNewspy is a console-based news scraping and summarization tool designed to provide a streamlined and informative reading experience.\n\n## Description\n\nNewspy allows users to browse and read articles from various websites directly from the console, with the capability to generate AI summaries of the articles.\nThe application is designed to be lightweight, fast, and respectful of user privacy.\n\n## Key Features\n\n- **News Scraping**: Extracts content from predefined websites or manually entered URLs.\n- **Privacy**: Offers a clean reading experience without ads or tracking.\n- **Image Rendering**: Supports image display directly in the terminal (only with Kitty).\n- **AI Summaries**: Generates concise summaries of articles using the OpenAI API.\n- **Modularity**: Flexible structure that allows easy addition of new websites and features.\n- **Cool**: Terminal ui\u003e\u003e\u003e\n\n## Requirements\n\n- Python 3.x\n- Kitty terminal (for displaying images)\n- OpenAI API key (for AI summaries)\n\n## Installation\n\n1. Clone the repository: ```git clone https://github.com/SimoneFelici/Newspy.git```\n2. Install dependencies: ```pip install -r requirements.txt```\n3. Edit the `.env` file in the directory and add your OpenAI API key, or choose if you want to display images:\n\n## Usage\n\nEdit the file ```sites.json``` and add the name and url of the site you want to read articles form, then add the xpath that has the articles.\n\nHere is an example of xpath:\n![image](https://github.com/user-attachments/assets/a9622b51-bec4-471f-9dcf-c891cb6b42cd)\n\n![image](https://github.com/user-attachments/assets/0fbfa7ee-5ba8-4741-9254-ed9cc330a094)\n\nRun the main script: ```python3 main.py```.\n\n\n## License\n\nGNU v3.0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonefelici%2Fnewspy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonefelici%2Fnewspy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonefelici%2Fnewspy/lists"}