python 进行twitter图文信息数据获取

尝试利用python进行twitter数据的获取 ** 1.注册twitter**

第一步就需要翻墙。host方法只能注册一个账户刷一刷文章,但并不能进入开发者API那一块。进入开发者网页最简单的方法就是直接在个人主页的"twitter"前面加一个"apps."就好了。然后按照要求申请一个apps,获得consumer key,consumer secret,access token,access token secret 4个字符串

2.python 环境

没什么特殊的要求,我的python 3.5,pip 自动安了一个tweepy 就好了。说明文档在这里:http://tweepy.readthedocs.io/en/v3.5.0/getting_started.html

3.试运行

尝试第一次运行。需要一直开着全局模式的代理,局部代理一样会报错

import tweepy
consumer_key='twitter apps注册给的'
consumer_secret=''twitter apps注册给的'
access_token='twitter apps注册给的'
access_secret='twitter apps注册给的'

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_secret)

api = tweepy.API(auth,proxy='127.0.0.1:1080')#proxy这里这个号不给的话会一直报没响应的错误

#home_time方法返回用户和用户朋友的最多20条状态
for status in tweepy.Cursor(api.home_timeline).items(10):
    print (status.text)

试运行结果

这里是关注的用户的twitter信息……鬼知道我关注了些什么……

4.全球用户的相关主题get

这里需要让tweepy链接twitter的stream api。这里选择的主题是panda,原本希望应该是什么大熊猫相关的东西吧,然而万万没想到……之后再说。调用后生成json文件

class MyListen(StreamListener):
    def on_data(self, data):
        try:
            with open('panda.json','a') as f:
                f.write(data)
                print("add!!")
                return True
        except BaseException as e:
            print("Error: data")
        return True
    def on_error(self, status):
        print(status)
        return True

witter_stream=Stream(auth,MyListen(),proxy='127.0.0.1:1080')
#选择希望get的相关内容
witter_stream.filter(track=['#panda'])

生成的json文件里有一堆东西,包括用户信息,文章内容,文章引用图片信息,转发,评论内容。随着程序的运行,每一组都有可能增大。只能强制中断,不然就没完了……其中想将图片直接读取

5.通过url存下图片 图片信息的url 在media组中。找到即可。用到skimage读取信息。skimage的安装需要pip install scikit-image。这是我实验用的一个url。

from skimage import io
image=io.imread('http://pbs.twimg.com/media/DEOBBJJU0AATl3e.jpg')
io.imshow(image)
io.imsave('t.jpg',image)
io.show()

然而……说好的熊猫却是这样的…… url解析图片

转载于:https://my.oschina.net/DDigimon/blog/1305709

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值