几个月前,我写了关于the opportunities for developers around Mastodon的文章。
从那以后,我很高兴看到乳齿生态系统周围弹出不同的应用程序 - 仅在iOS上,过去两周,three or four impressive new client apps emerge(以及更多正在测试),以及Elk等出色的渐进式网络应用程序,如。
(好奇Mastodon客户有什么?
我自己对平台的使用量很大,我想看看我最常使用的应用程序。
将Python与Mastodon API(与Mastodon.py library一起使用),以及Python生态系统中可用的可爱工具 - 在这种情况下,Pandas和Matplotlib-我们可以快速了解我在哪里度过的时间,以及我的时间,我一直在尝试的地方。
这是对代码的快速概述,将最低限度降低到最低限度:
from mastodon import Mastodon
import pandas as pd
import matplotlib.pyplot as plt
API_KEY = "TOKEN"
mstdn_url = "https://my.instance"
user_id = "ID"
mstdn = Mastodon(access_token=API_KEY,
api_base_url=mstdn_url)
print("Getting All The Statuses ...")
# get only toots from this account (no boosts)
statuses = mstdn.account_statuses(user_id, exclude_reblogs=True)
apps_list = []
while statuses:
statuses = mstdn.fetch_remaining(statuses)
for s in statuses:
apps_list.append(s["application"]["name"])
break
print("Charting ...")
pd.Series(apps_list).value_counts(sort=False).plot(
kind='barh', color='#563ACC', title="Mastodon client usage")
plt.savefig('toot-apps.pdf', bbox_inches='tight')
print('... done!')
让我们介绍一下:
- 我们与pandas一起导入mastodon.py库
- 我们设置了一些变量来定义我们的home mastodon实例和一个API令牌(我们在Mastodon设置中的开发部分下创建了一个应用程序)
- 我们致电API以获取目标用户的所有状态(TOOTS)(这使用Mastodon.py中可用的分页功能)
- 排除助推器,因为这些不带有有关用于增强Toot的应用程序的数据。
- 对于每个状态,我们获取所使用的应用程序的名称,然后将其添加到列表
- 最后,我们使用熊猫和matplotlib在摩托道紫色的颜色中创建水平条形图,然后保存到PDF。
- 我在这里还有很多事情,例如显示如何在不同时间使用不同的应用程序(仅通过与使用日期相关联)
一些数据点:由于我在11月将my Mastodon presence移至我当前的实例(Macaw.Social),因此我发布了1609个状态,其中954个是我自己的有机状态,而不是增强状态。其中一半使用默认的Web UI发布。我一直在使用各种移动应用程序,并且主要是在iOS上使用metatext的开始 - 最近,我发现自己使用了象牙色(我在Testflight中使用过),但是我真的很喜欢其他一些选项还有...冰块,象牙和猛mm是很棒的应用程序。
当然,这只是显示我最常使用的应用程序来主动发布的应用程序,并且不会反映在应用程序或网站上花费的时间 - 我认为数据会讲另一个故事,但它需要来自我一直在使用的设备,而不是来自API。
只是一个快速的帖子来总结我自己的一些数据 - 让我知道您正在使用的应用程序,或者您有兴趣使用Mastodon API。
在#fediverse中见!