#!/usr/bin/env python3
import click

from scrab.formatter import to_text
from scrab.io.web_client import load_page
from scrab.parser import parse


@click.command()
@click.argument('url', nargs=1)
def scrab(url):
    # 1. load page
    page = load_page(url)
    if page is None:
        print("Error: Page cannot be loaded.")
        return None

    # 2. parse/extract content
    content_tree = parse(page)
    if content_tree is None:
        print("Error: Content cannot be extracted.")
        return None

    # 3. produce target format
    # TODO add markdown support
    content = to_text(content_tree)
    print(content)


if __name__ == '__main__':
    scrab()
