Just save this as karma.py and run it with Python 3.6 or higher.

import requests
import math

INSTANCE_URL = "https://feddit.de"
TARGET_USER = "ENTER_YOUR_USERNAME_HERE"

LIMIT_PER_PAGE = 50

res = requests.get(f"{INSTANCE_URL}/api/v3/user?username={TARGET_USER}&limit={LIMIT_PER_PAGE}").json()

totalPostScore = 0
totalCommentScore = 0
page = 1
while len(res["posts"])+len(res["comments"]) > 0:
	totalPostScore += sum([ x["counts"]["score"] for x in res["posts"] ])
	totalCommentScore += sum([ x["counts"]["score"] for x in res["comments"] ])
	
	page += 1
	res = requests.get(f"{INSTANCE_URL}/api/v3/user?username={TARGET_USER}&limit={LIMIT_PER_PAGE}&page={page}").json()

print("Post karma:    ", totalPostScore)
print("Comment karma: ", totalCommentScore)
print("Total karma:   ", totalPostScore+totalCommentScore)
  • Leafeytea@beehaw.org
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    There are plenty of other ways to track how your posts are doing though, if by that you mean relevance, exposure, engagements, etc. On this, it was at least one aspect of positives that Twitter offered in terms of their Analytics feature. I guess we don’t have the tools for something like that here but it might be a nice middle ground.

    For me, the entire concept of Karma from a Reddit fashion is that it completely blows up any notion of genuine discussions. It too often lead to people fishing for approval vs saying what they actually believe. Too many like minded people also following and posting after each other, ganging up on opinions opposite their own, hive mind issues everywhere. I tried to comment something similar about this on Kbin and immediately got down-voted for it, so it was pretty clear to me there are people who don’t want to be told their karma was not a real measure of their value, nor of their contributions to the site.