Skip to main content
Latest PyPI version MIT license https://coveralls.io/repos/carlcarl/imgurup/badge.svg?branch=master&service=github

Upload to imgur using its API(v3). Support CLI, KDE, Zenity(GTK) and Mac dialog upload.

Feature

Support upload images(anonymously/account)
Support CLI, KDE, Zenity(GTK) and Mac dialog upload
Support Python 3

Installation

$ sudo python setup.py install

or

$ sudo pip install imgurup

Usage

img [-h] [-f [<image path> [<image path> ...]]] [-d [<album id>]] [-g] [-n] [-q]

You can just type img without any argument, the program will ask you for another infomation.
But add -f argument with your image file would be easier to use, ex: img -f xx.jpg
After the authentication, the access_token and refresh_token will be saved in ~/.imgurup.conf

Optional arguments:

-h, --help       show this help message and exit
-f [<image path> [<image path> ...]] The images you want to upload
-d [<album id>]  The album id you want your image to be uploaded to
-g               GUI mode
-n               Anonymous upload
-s               Add command in the context menu of file manager(Support Gnome and KDE)
-q               Choose album with each file
-t               Use image name as the title

Packcage Dependency

  • None

Customize example

from imgurup import Imgur


class MyImgur(Imgur):

    def get_error_dialog_args(self, msg='Error'):
        args = [
            'zenity',
            '--error',
            '--text={text}'.format(text=msg),
        ]
        return args

    def get_auth_msg_dialog_args(self, auth_msg, auth_url):
        args = [
            'zenity',
            '--entry',
            '--text={msg}'.format(msg=auth_msg),
            '--entry-text={link}'.format(link=auth_url),
        ]
        return args

    def get_enter_pin_dialog_args(self, token_msg):
        args = [
            'zenity',
            '--entry',
            '--text={msg}'.format(msg=token_msg),
        ]
        return args

    def get_ask_image_path_dialog_args(self):
        args = [
            'zenity',
            '--file-selection',
        ]
        return args

    def get_ask_album_id_dialog_args(self, albums, no_album_msg):
        i = 1
        arg = [
            'zenity',
            '--list',
            '--text="Choose the album"',
            '--column=No.',
            '--column=Album name',
            '--column=Privacy',
        ]
        for album in albums:
            arg.append(str(i))
            arg.append('{album[title]}'.format(album=album))
            arg.append('{album[privacy]}'.format(album=album))
            i += 1
        arg.append(str(i))
        arg.append(no_album_msg)
        arg.append('public')

    def get_show_link_dialog_args(self, links):
        args = [
            'zenity',
            '--info',
            '--text={links}'.format(links=links),
        ]
        return args

License

The imgurup package is written by Chien-Wei Huang. It’s MIT licensed and freely available.

Feel free to improve this package and send a pull request to GitHub.

Release files for imgurup 1.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for imgurup 1.7.0
File Size Uploaded
imgurup-1.7.0.tar.gz 14.4 kB Details

Release files / imgurup-1.7.0.tar.gz

Download URL imgurup-1.7.0.tar.gz
Size 14.4 kB
Tags Source
SHA-256 checksum
How to use checksums
69c28f8332f71ec35240db118c9a33158befe616748664583157f8063bdaef3a
BLAKE2b-256 checksum
How to use checksums
5ee3f5e181f790f415a530c59280c2a71dc166ac5b098ba21c24caf9f732921d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.7.0 This release

1 release file

1.6.0

1 release file

1.5.7

1 release file

1.5.5

1 release file

1.5.4

1 release file

1.5.2

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.0

1 release file

1.3.0

1 release file

1.2.0

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page