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)
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!
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.