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)
  • nlm@beehaw.org
    link
    fedilink
    arrow-up
    15
    ·
    1 year ago

    Nice job and all… but I really wish this wasn’t a thing.

    Karma is something that should stay behind at Reddit imho, it just fosters karma whoring instead of actually contributing to a discussion.

    That’s one of the things I liked best when I joined Lemmy, that there wasn’t a visible karma counter on people’s profiles.

    Anyway… rant mode off.

    Still, neat job!

    • Square Singer@feddit.deOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      I get the reasoning, I’ve read the discussions. Still I like the karma thing, not for showing it to other people, but to give me an overview over what I’ve been doing so far. It’s kinda an activity meter for me, and a bit of feedback on how my posts are doing.

      I am on Stackoverflow, and obviously I was on Reddit. While I was there, I never actually looked at other people’s karma, but my karma motivated me to be more engaged.

      • nlm@beehaw.org
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        I can see the appeal… I just don’t like it myself. It’s so easy for it to become a measuring stick or something you actually try to boost.

        For me the number of posts and comments on the profile is good enough :)

      • SenorBolsa@beehaw.org
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        I’m probably going to do the same. I should just be confident in what I’m saying, at least to a reasonable degree, and not worry if others feel like they agree. (I’m pretty sure I’m mostly cool) but it is also nice to have a way of posting a simple positive reaction to a post without clogging up the thread with. “nice” “I agree” “cool beans” etc.