如何通过python调用新浪微博的API来爬取数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过python调用新浪微博的API来爬取数据相关的知识,希望对你有一定的参考价值。

1:安装python(这个不多说啦)
2:下载新浪微博SDK的python包,解压为weibopy目录

3:申请AppKey,

流程:

1:通过oAuth认证
按我的理解简化如下:
用户在新浪微博给的页面输入账号密码,然后微博给应用一个PIN码,这样应用通过PIN码才有权限访问该用户的信息,而应用在整个过程中是接触不到密码的,所以用户觉得很安全,后果很满意
2:获得认证之后,就可以使用微博SDK提供的API获得信息啦
3:如果想设计web或者客户端应用的话,那就继续加个GUI好啦(未完成)

代码:

#!/usr/bin/python

import webbrowser

from weibopy.auth import OAuthHandler
from weibopy.api import API

AppKey = '2525355147'
AppSecret = '2e2c7bcdfc362eace266d1f2bf83fe6b'

my_auth = OAuthHandler(AppKey , AppSecret)
webbrowser.open(my_auth.get_authorization_url())
verifier = raw_input('PIN: ').strip()
my_auth.get_access_token(verifier)

my_api = API(my_auth)
for comment in my_api.mentions():
object = comment
id = object.__getattribute__("id")
text = object.__getattribute__("text")
print str(id) + " : " + text
参考技术A 1:安装python(这个不多说啦)
2:下载新浪微博SDK的python包,解压为weibopy目录
(http://open.t.sina.com.cn/wiki/index.php/SDK)
3:申请AppKey,详见(http://open.t.sina.com.cn/wiki/index.php/FAQ)

流程:

1:通过oAuth认证,详见(http://open.t.sina.com.cn/wiki/index.php/Oauth)
按我的理解简化如下:
用户在新浪微博给的页面输入账号密码,然后微博给应用一个PIN码,这样应用通过PIN码才有权限访问该用户的信息,而应用在整个过程中是接触不到密码的,所以用户觉得很安全,后果很满意
2:获得认证之后,就可以使用微博SDK提供的API获得信息啦
3:如果想设计web或者客户端应用的话,那就继续加个GUI好啦(未完成)

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

#!/usr/bin/python

import webbrowser

from weibopy.auth import OAuthHandler
from weibopy.api import API

AppKey = '2525355147'
AppSecret = '2e2c7bcdfc362eace266d1f2bf83fe6b'

my_auth = OAuthHandler(AppKey , AppSecret)
webbrowser.open(my_auth.get_authorization_url())
verifier = raw_input('PIN: ').strip()
my_auth.get_access_token(verifier)

my_api = API(my_auth)
for comment in my_api.mentions():
object = comment
id = object.__getattribute__("id")
text = object.__getattribute__("text")
print str(id) + " : " + text
参考技术B 参考官方文档

以上是关于如何通过python调用新浪微博的API来爬取数据的主要内容,如果未能解决你的问题,请参考以下文章

如何用python调用新浪微博的api

Python爬取新浪微博用户信息及内容

Python爬取新浪微博用户信息及内容

Python 超简单爬取新浪微博数据 (高级版)

高分求助,php新浪微博接口 api 如果获取某一地区下所有用户的微博列表。。我在新浪微博的ap帮助里没有找到

获取新浪微博的Access_token