Skip to content

newspaper3k

Python library that downloads news articles and pulls out their text, title, and metadata.codelucas/newspaper

Stars
15.2k
Forks
2.1k
Licence
MIT
Language
Python
Last update
11 days ago
Type
Library

What it is

newspaper3k is a Python 3 library for extracting news content from web pages. Given an article URL, it aims to return the main text along with metadata such as the title and authors. People use it to collect news articles for analysis or to build news aggregators without writing their own page parsers.

  • Download and parse a news article from a URL to get its main text
  • Extract article metadata such as title and other fields from a list of news links
  • Build a simple news aggregator that collects articles from several sites

Great for

  • Python developers building news aggregation or article collection scripts
  • Data researchers gathering article text for analysis
  • Hobbyists experimenting with web scraping of news sites

Not ideal for

  • Non-programmers, since it requires writing Python code to use
  • Projects needing guaranteed accuracy on every site, because extraction quality varies by page layout
  • Anyone needing a maintained, actively developed tool, since the README provided no details on current maintenance status beyond the latest release listed as 0.0.9
Step-by-step guide: how to use newspaper3kInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python 3

    Install via pip

    pip install newspaper3k
  2. 2

    Run it

    • Install the package with pip
    • Import the Article class in a Python script
    • Pass a news article URL to the Article object, download it, and parse it
    • Read the extracted title and text from the object
  3. 3

    Get the most out of it

    • Check the advanced docs linked in the project description for more options
    • Use the metadata extraction features alongside the text extraction for richer datasets

Downloads

Strengths

  • Focused on news articles, so it handles common article extraction without custom parsing rules
  • Written in Python 3 with a permissive MIT license
  • Widely starred on GitHub, indicating broad community interest

Trade-offs

  • The README provided here was truncated, so detailed usage and limitations could not be confirmed
  • Extraction quality depends on each website's page structure and may miss content
  • Latest release is 0.0.9 with no binaries, so it is installed as a Python package rather than as an app

How it compares

ProjectStarsTypeLevelUpdatedBest for
newspaper (this)15.2kLibraryintermediate11 days agoPython developers building news aggregation or article collection scripts
lux31.8kCLIbeginner7 months agoPeople who want to save videos from supported sites to a local file from the command line
cheerio30.5kLibrarybeginner4 days agoJavaScript developers who already know jQuery-style selectors
spider-flow11.4kAppintermediate3.4 years agoNon-programmers who need to collect data from websites and prefer visual flow definitions
Scrapegraph-ai32.4kLibraryintermediate1 months agoDevelopers who want to extract structured data from web pages using a plain-language prompt
proxy_pool23.8kAppintermediate5 months agoDevelopers building web scrapers who want to experiment with rotating proxies

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.