You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Andreas Zweili ba5f5a9b7b update path again 2 years ago
requirements add pyinstaller as a dependency 2 years ago
tests add two more test URLs 2 years ago
url2markdown update path again 2 years ago
.coveragerc add pytest-cov 2 years ago
.gitignore ignore all markdown files 2 years ago
LICENSE add the license 2 years ago
Makefile correct a command name 2 years ago correct the example command 2 years ago add 2 years ago


!!!url2markdown is still under development and not suited for production yet!!!

url2markdown lets you download an URL and save it as a Markdown file. Additionally you can provide a list of tags which will get added to the top of the file. The main idea behind the script is to download articles and feed them to an vault already extended with internal Obsidian links.

url2markdown --topics=Python,CLI


  • Provide an URL on the command line.
  • Provide a text file with a list of URLs and tags.


Install url2markdown by cloning the repository and inside it run:

make init

However url2markdown relies on newspaper to function. Please refer to its documentation to install otherwise url2markdown will not work properly (actually not a all):


Currently you have to navigate into the repository and run python3 url2markdown in order to run the programm.

usage: url2markdown [-h] (--file FILE | --url URL) [--topics TOPICS]

optional arguments:
  -h, --help       show this help message and exit
  --file FILE      A file containing one URL per line.
  --url URL        The URL of the article to convert to Markdown.
  --topics TOPICS  A list of comma separated topics e.g. 'foo,bar'.

You can either provide the URL to an article or a file containing multiple URLs. Make sure that you only have one URL per line. On the command line you can optionally provide topics to which the Markdown version of the article should get linked to.

python3 url2markdown --url --topics Python,command line

If you provide a file add the topics right behind the URL separated by a space: Python,command line,argparse Python,pytest,argparse


  • Issue Tracker:
  • Source Code:


If you want to start developing run the following two commands to make sure your'e ready to go:

make init
make test


You can open an issue at the Github repository however I don't garantee any support whatsever since this is a fully personal project more seen as an excersice.


The project is licensed under the GPLv3 license.