Metadata-Version: 1.1
Name: rpweibo
Version: 0.2.2
Summary: cURL + Python Weibo Wrapper
Home-page: https://github.com/WeCase/rpweibo
Author: Tom Li
Author-email: biergaizi@member.fsf.org
License: LGPLv3+
Download-URL: https://github.com/WeCase/rpweibo
Description: rpweibo
        =======
        
        cURL + Python Weibo Wrapper.
        
        
        ## Installing
        
        ```bash
        sudo python3 setup.py install
        ```
        
        or
        
        ```bash
        sudo pip install rpweibo
        ```
        
        ## Usage
        
        ### Initialize
        
        ```python
        import rpweibo
        
        example_app = rpweibo.Application(APP_KEY, APP_SECRET, REDIRECT_URI)
        weibo = rpweibo.Weibo(example_app)
        ```
        
        ### Authorize
        
        #### with Username and Password
        
        ```python
        authenticator = rpweibo.UserPassAutheticator(USERNAME, PASSWORD)
        try:
            weibo.auth(authenticator)
        except rpweibo.AuthorizeFailed:
            print("Invalid username or password!")
        ```
        
        #### with Existing Access Token
        
        ```python
        authenticator = rpweibo.AccessTokenAuthenticator(ACCESS_TOKEN)
        weibo.auth(authenticator)
        ```
        
        ### Using API
        
        #### Styles
        
        ##### Procedural Style
        
        ```python
        tweets = weibo.get("statuses/user_timeline")["statuses"]
        for tweet in tweets:
            print(tweet["text"])
        
        weibo.post("statuses/update", status="Hello, world!")
        ```
        
        ##### Object Style
        
        ```python
        tweets = weibo.api("statuses/user_timeline").get().statuses
        for tweet in tweets:
            print(tweet.text)
        
        weibo.api("statuses/update").post(status="Hello, world!")
        ```
        
        ### Error Handling
        
        ```python
        try:
            tweets = weibo.api("statuses/user_timeline").get().statuses
        except rpweibo.RemoteError:
            # handle API errors likely cause by remote server
            print("Something wrong with the server")
        except rpweibo.CallerError:
            # handle API errors likely cause by the client
            print("You shouldn't use the API in this way")
        except rpweibo.ResultCorrupted:
            print("Request the API successfully, but got the corrupted result")
        except rpweibo.NetworkError:
            print("Somethings wrong with your network")
        except rpweibo.APIError as e:
            # Handle all API errors, including RemoteError and CallerError.
            # NOTE: we handle both two type of API errors already, never reach here
            print("%d - %s" % (e.error_code, e.error_message))
        ```
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Internet
Classifier: Topic :: Software Development :: Libraries :: Python Modules
