Skip to content

Thesharing/pyweibo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyWeibo

Version Download License Status

Python SDK for Weibo API.

中文文档

Installation

pip install pyweibo

Preparation

  1. Register the Sina Weibo account, and establish a new app in open.weibo.com.

  2. Get App Key and App Secret from 应用信息 -> 基本信息

  3. Set Redirect URI in 应用信息 -> 高级信息 -> OAuth2.0授权设置 as:

https://api.weibo.com/oauth2/default.html

Usage

Authentication

Basic usage

from pyweibo import Auth
auth = Auth()

When running, you need to manually input App Key and App Token:

App Key: <Your App Key>
App Secret: <Your App Secret>

Next the web browser will automatically open the redirect uri.

Copy the uri to the console, and the token will be generated:

Input the url or the token: <The URL or token>

Finally, the token will also be stored in ./token.json.

As for advanced usages, you can specify:

API Client

Basic usage

from pyweibo import Auth, Client

# Get the token
auth = Auth()
token = auth.token.token

# Start the client
client = Client()
data = client.statuses.home_timeline.get(access_token=token)
  • The APIs and their parameters can be referred from official docs.

  • You can access the api call like class attributes, where the last method call must be get or post.

client.api_name_1.api_name_2.get(param1=value1, param2=value2)
  • Also you can use dict index like:
client[api_name_1][api_name_2].get(param1=value1, param2=value2)
  • The return value is a TextDict, where you can access the attributes directly like:
user = data.statuses[0].user
  • Also you can upload the picture with the parameter pic:
with open('image.png', 'rb') as f:
    client.statuses.upload_pic.post(pic=f)
from pyweibo import UploadClient

client = UploadClient()
with open('image.png', 'rb') as f:
    client.statuses.upload.post(status='Image', pic=f)

Contribute

Project:Thesharing/pyweibo

Establish new issue if there is any question or advice.

Reference

michaelliao/sinaweibopy

lxyu/weibo

Thesharing/spider-util