def METHOD_NAME(page):
    """Collect general image metadata"""
    # og:title contains data as "<user> - <title>", but both
    # <user> and <title> can contain a "-" as well, so we get the title
    # from somewhere else and cut that amount from the og:title content
    extr = text.extract_from(page)
    user = extr('property="og:title" content="', '"') or \
        extr('property=og:title content="', '"')
    descr = extr('property="og:description" content="', '"') or \
        extr('property=og:description content="', '"')
    title = extr('<h1 ', '</h1>')
    if title:
        title = title.partition(">")[2]
        user = user[:-len(title)-3]
    elif user:
        user, _, title = user.partition(" - ")
    else:
        raise exception.NotFoundError()
    return {
        "user": text.unescape(user),
        "title": text.unescape(title),
        "description": text.unescape(descr),
    }