Skip Navigation
InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)DI
dishwashingunit @lemmy.whynotdrs.org
Posts 1
Comments 8

New to crypto and interested because of GME? Start here.

NFTs are just crypto that isn't divisible.

Basics:

https://www.reddit.com/r/btc/wiki/index

Blocksize debate:

https://www.reddit.com/r/btc/comments/js6jft/frequently_asked_questions_and_information_thread/

https://medium.com/@johnblocke/a-brief-and-incomplete-history-of-censorship-in-r-bitcoin-c85a290fe43

https://medium.com/@johnblocke/r-bitcoin-censorship-revisited-58d5b1bdcd64

Starting point for other chains (let’s face it, the good guys lost the blocksize debate and BCH isn’t next in line, so the next best thing for NFTs is Ethereum):

https://ethereum.org/en/learn/

7
*Permanently Deleted*
  • I'm a big Monero fan. In the context of GME though, Ethereum is a great choice for NFTs. Last I checked there were scalability concerns with Monero but I will confess I haven't been following it as much lately. Maybe I should make the post clearer that I'm talking about a chain for NFTs.

  • Overwriting and Deleting all my r/Superstonk comments. Feels good man.
  • If you don't want to trust a third-party service, here's some really ugly code that I spun up quite a while ago when I still sucked at coding (even though I still do), along with some instructions that I chatGPT'd for it. It doesn't handle your posts, only comments. I never had enough posts to bother when I could just do it by hand.

    Still seems to work even with API restrictions, but maybe that's because I didn't hit the limit when I tested it out just now.

    
    import json
    import requests
    import keyring
    import essential_generators
    
    CLIENT_ID=keyring.get_password("Redacted", "CLIENT_ID")
    CLIENT_SECRET=keyring.get_password("Redacted", "CLIENT_SECRET")
    REFRESH_TOKEN=keyring.get_password("Redacted", "REFRESH_TOKEN")
    
    USER_AGENT="(redacted)"
    BASE_URL="https://oauth.reddit.com"
    DEFAULT_USERNAME = "(your user name)"
    
    auth = requests.auth.HTTPBasicAuth(CLIENT_ID, CLIENT_SECRET)
    headers = {"User-Agent": USER_AGENT}
    sentence_generator = essential_generators.DocumentGenerator()
    
    
    def _refresh_access_token():
    
        post_data = {"grant_type": "refresh_token", "refresh_token": REFRESH_TOKEN}
        response = requests.post("https://www.reddit.com/api/v1/access_token", auth=auth, data=post_data, headers=headers)
        return response.json()
    
    def who_am_i():
        return requests.get(BASE_URL + "/api/v1/me", headers=headers).json()
    
    def make_json_pretty(json_object: dict | str) -> json:
        return print(json.dumps(json_object, indent=4))
    
    def get_list_of_comments(username = DEFAULT_USERNAME):
        if username is None:
           username = who_am_i().get("name")
        return requests.get(BASE_URL + "/user/" + username + "/comments", headers=headers, params={"limit": 100}).json()
    
    def overwrite_a_comment(thing_id):
        random_sentence = sentence_generator.sentence()
        post_data = {"api_type": "json", "text": random_sentence, "thing_id": thing_id}
        requests.post(BASE_URL + "/api/editusertext", data=post_data, headers=headers).json()
        return random_sentence
    
    def delete_a_comment(thing_id):
        post_data = {"id": thing_id}
        return requests.post(BASE_URL + "/api/del", data=post_data, headers=headers)
    
    def parse_comment_batch(list_of_comments):
        results = []
        for comment in list_of_comments['data']['children']:
             results.append((comment['data']['id'], comment['data']['body']))
        return results
    
    def overwrite_and_delete_all_comments():
        while(True):
            batch_of_comments = parse_comment_batch(get_list_of_comments())
            if (not batch_of_comments):
                return
            for thing_id, comment in batch_of_comments:
                if (not thing_id):
                    break
                print("Overwriting " + thing_id + " " + comment + " with " + overwrite_a_comment("t1_" + thing_id))
                print("Deleting " + thing_id)
                delete_a_comment("t1_" + thing_id)
    
                
    
    if __name__ == "__main__":
        TOKEN = _refresh_access_token()['access_token']
        headers['Authorization'] = f'bearer {TOKEN}'
        
        overwrite_and_delete_all_comments()
        
    

    Sure, here are the steps you need to follow to use this script to overwrite and delete all comments from your Reddit account:

    1. Prerequisites

      This script requires Python and the following Python packages: requests, keyring, and essential_generators. You can install them using pip:

      pip install requests keyring essential_generators
      
    2. Obtain your Reddit App's Client ID and Secret

      You need a Reddit app's client ID and secret to use Reddit's API. To obtain these, follow these steps:

      • Log into Reddit on your web browser.
      • Go to the App preferences page.
      • Scroll down to the "Developed Applications" section and click "Create App" or "Create Another App".
      • Fill out the form:
        • name: Any name will do.
        • App type: Choose "script".
        • description: Can be left blank.
        • about url: Can be left blank.
        • redirect uri: http://localhost:8080
        • permissions: Choose 'read'.
      • Click "Create app".
      • On the app details page, you will see a section named "Developed Applications". Here, the client ID is listed under the web app you just created, just below the web app title. It is a string of characters and numbers. The client secret is listed as "secret".
    3. Save Your Client ID, Secret, and Refresh Token in Your Keyring

      Use Python's keyring package to securely save your Reddit app's client ID, client secret, and Reddit account's refresh token. You can use the following Python commands to store these values:

      import keyring
      
      keyring.set_password("YourServiceName", "CLIENT_ID", "YourClientID")
      keyring.set_password("YourServiceName", "CLIENT_SECRET", "YourClientSecret")
      keyring.set_password("YourServiceName", "REFRESH_TOKEN", "YourRefreshToken")
      

      Replace "YourServiceName", "YourClientID", "YourClientSecret", and "YourRefreshToken" with the actual service name, client ID, client secret, and refresh token. The service name can be any name you choose—it's just an identifier for you to use.

    4. Update the Service Name and Username in the Python Script

      Replace "Redacted" in the following lines of the Python script with your service name:

      CLIENT_ID=keyring.get_password("YourServiceName", "CLIENT_ID")
      CLIENT_SECRET=keyring.get_password("YourServiceName", "CLIENT_SECRET")
      REFRESH_TOKEN=keyring.get_password("YourServiceName", "REFRESH_TOKEN")
      

      Replace "(your user name)" in the following line with your Reddit username:

      DEFAULT_USERNAME = "(your user name)"
      
    5. Run the Python Script

      After setting up everything, run the Python script. It will fetch all your Reddit comments and overwrite them with random sentences, then delete them.

    Please remember, use this script responsibly. It will delete all of your Reddit comments, and the process is irreversible. Always double-check the script and make sure you're ready to delete all comments before running it.