Giter Club home page Giter Club logo

weibo's Introduction

Weibo

http://img.shields.io/pypi/v/weibo.svg?style=flat http://img.shields.io/pypi/dm/weibo.svg?style=flat

新浪微博 python SDK.

使用 requests 进行相关网络操作,因而相对于官方的 sdk,极大的简化了代码,并提高了可读性。

安装

推荐使用 pip 安装。

$ pip install weibo

使用说明

准备工作

  • 首先,注册一个新浪开发者帐号,并在 新浪开发平台 新建一个 app.
  • 创建好应用之后在 '应用信息 -> '基本信息' 里面获取 App Key 和 App Secret.
  • 在 '应用信息 -> '高级信息' 里面设置好 '授权回调页'.

示例

下面分别用 API_KEY, API_SECRET, REDIRECT_URI 代表准备工作里面的三个参数。

Token 认证

>>> from weibo import Client
>>> c = Client(API_KEY, API_SECRET, REDIRECT_URI)
>>> c.authorize_url
'https://api.weibo.com/oauth2/authorize?redirect_uri=http%3A%2F%2F127.0.0.1%2Fcallback&client_id=123456'

复制链接到浏览器打开,获取 code.

>>> c.set_code('abcdefghijklmn')

client 初始化完成。token 可以被保存下来供下次调用时直接使用。

>>> token = c.token
>>> c2 = Client(API_KEY, API_SECRET, REDIRECT_URI, token)
>>> c2.get('users/show', uid=2703275934)

帐号认证

除了使用 token 认证,还可以使用 username / password 进行认证。

>>> from weibo import Client
>>> c = Client(API_KEY, API_SECRET, REDIRECT_URI, username='admin', password='secret')
>>> c.get('users/show', uid=1282440983)

接口调用

参考 微博开发文档 进行接口调用。

>>> c.get('users/show', uid=1282440983)
>>> c.post('statuses/update', status='python sdk test, check out http://lxyu.github.io/weibo/')

client 兼容上传图片接口。

>>> f = open('avatar.png', 'rb')
>>> c.post('statuses/upload', status='new avatar!', pic=f)

weibo's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

weibo's Issues

真的问题大

Traceback (most recent call last):
File "test.py", line 24, in
search(t)
File "/home/chengshuyi/python/weibo/search.py", line 8, in search
c = Client(API_KEY, API_SECRET, REDIRECT_URI, token)
File "/usr/local/lib/python2.7/dist-packages/weibo.py", line 45, in init
self.set_token(token)
File "/usr/local/lib/python2.7/dist-packages/weibo.py", line 84, in set_token
self.uid = token['uid']
TypeError: string indices must be integers, not str

新浪微博的sdk有点问题

在python3.4的版本里,你的authorize_url这个方法会报错,应该是urllib.parse.urlencode(params)
你这个应该是基于python2.7写的吧,希望出个python3.x的版本

安装的时出现UnicodeError

Traceback (most recent call last):
File "", line 20, in
File "C:\Users\qiao\AppData\Local\Temp\pip-build-2wl7dm3o\weibo\setup.py", line 15, in
long_description=open('README.rst').read(),
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 241: illegal multibyte sequence

----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in
C:\Users\qiao\AppData\Local\Temp\pip-build-2wl7dm3o\weibo
windows10+python3.4

documentation issue

Documentation is really confusing .

c2 = Client('API_KEY', 'API_SECRET', 'REDIRECT_URI', 'token') ???

报错 TypeError: session() takes no arguments (1 given)

当执行c.set_code('code')时报错

Requests版本1.0.4

File "bot.py", line 9, in
c.set_code(code)
File "/Library/Python/2.7/site-packages/weibo.py", line 83, in set_code
self.set_token(tk['access_token'], time.time() + int(tk['expires_in']))
File "/Library/Python/2.7/site-packages/weibo.py", line 92, in set_token
params={'access_token': self.access_token})
TypeError: session() takes no arguments (1 given)

uid

您好!
認證成功(set_code)後通過token_info獲取uid的時候發現uid貌似沒有被賦值,永遠返回null。
請指教。

requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed

c.get('users/show', uid=1282440983)
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python2.7/site-packages/weibo.py", line 107, in get
self._assert_error(res)
File "/usr/lib/python2.7/site-packages/weibo.py", line 95, in _assert_error
d.get("error_code", ""), d.get("error", "")))
RuntimeError: 21333 forbid use this authentication type: basic

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.