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)
I am spending too much time on Lemmy as is :)
What I really found interesting, also compared to Reddit, is how few of my posts/comments actually have downvotes.
Yea … it’s interesting isn’t it … what happens when the “engagement rage” is taken out of the room.
Politeness and consideration … helluva drug!
For instance, I disliked the push to bring a reddit feature to here, mostly out of a feeling that there might be a bit too much “lets keep this is much like reddit as possible” developing, just enough to think about downvoting this post for a second, but realised it would have way too mean and that a post expressing my disagreement was plenty while you were doing genuinely interesting and useful work.
On reddit, sadly, I probably would have downvoted, moved on and not thought twice.