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)
  • Square Singer@feddit.deOP
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    That would sound plausible, yes, but apparently it is not. For me, my post_score was ~20% less than the score of all my posts summed up, and my comment_score was ~95% less. I actually opened a bug report for that here: https://github.com/LemmyNet/lemmy/issues/3393

    I just ran the script on your user. The API returns a post_score of 125, while the calculated score is 121. For the comment_score the API returned 83, while the calculated score is 397.

    • GrishAix@feddit.de
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Thanks for the clarification.

      But to be honest, I’m still not quite sure if we really need this whole “internet points” thing.

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

        Yeah, it’s only for each user to run if they want to. I like to. I don’t care about others’ score. It’s just for me to know.

        I’ve read the discussions on that topic, and I agree that it should not be publicly visible, at least not next to the posts. If at all maybe in the user profile. But honestly I don’t care about that aspect.

        I just want to know where I’m standing.

        I’ve earned ~10% of my Reddit karma in just-over-two-weeks that I have been here, even though there are far fewer people here than on Reddit, so that’s concerning ;)

        But that’s what I wanted to know and I go that info.

      • CMLVI@kbin.social
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        It’s an alright way to see if someone is commenting on good-faith or not. Anytime I saw someone saying highly controversial things, I’d check their account to see if they were just downvote collecting or actually held the view. It’s harder to do that now; my account says I’m at like…-30 something, on a single comment that went beyond a few people’s sensibilities. I could have put an /s on it but that defeats the purpose.

        But anyone that looks at my profile now to make the “good faith” check will see me at -30, despite other contributions.

        It is dumb how people worry about the number, but it does have other uses besides just a popularity indicator.

        • Teppic@kbin.social
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          Seems like this is kbin Vs Lemmy difference, we at kbin get to see people’s “reputation” (yes including Lemmy users …with caveats) from this thread it seems Lemmy doesn’t easily expose the same.

          That said the reputation system is kbin is currently broken as upvotes don’t count - it’s a known bug which will no doubt be corrected soon.

          • CMLVI@kbin.social
            link
            fedilink
            arrow-up
            0
            ·
            1 year ago

            I was under the impression that was how it was supposed to function; boosts were the upvote and downvote is the downvote, but boosts were weighted more heavily? Or something? Lmao it seems unnecessarily complicated, just stick with up or down.

            • Teppic@kbin.social
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago

              Ernest switched the upvote from being boosts to favourites shortly before the Reddit exodus, he did this to better align with Lemmy.
              Boosts and Favourites are both wider fediverse things - using them keeps compatibility there.

              The switch is implemented in hot and top sorting (as you note I think a upvote/favourite counts 50% of a boost), but it sounds like reputation wasn’t fixed at the same time, for now reputation is boosts less downvotes which Ernest himself has acknowledged doesn’t make much sense.

              It is still being discussed in the issues log!

              https://codeberg.org/Kbin/kbin-core/issues/80