• antsu@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    18
    arrow-down
    1
    ·
    2 days ago

    I understand this is not exactly what you’re asking for, but if you have access to a terminal, you can “unshorten” a link with:

    curl --head -L https://example.com/short | grep: location

    • jherazob@fedia.ioOP
      link
      fedilink
      arrow-up
      10
      ·
      2 days ago

      It is not enough for the increasingly common share.google links for example, and i bet there’s more like this

      • jherazob@fedia.ioOP
        link
        fedilink
        arrow-up
        1
        ·
        56 minutes ago

        Received a share.google link and checked what it did: It redirects to something with URL format “https://www.google.com/share.google?q=SOME_CODE”, which is a normal page that IS the target as far as curl and such tools are concerned but redirects on the browser probably using Javascript, so it will not redirect it with our normal tools. It will need custom code or Javascript execution. So, they knew what they were doing and used their powers for evil, as they usually do now.

  • solrize@lemmy.ml
    link
    fedilink
    English
    arrow-up
    14
    ·
    2 days ago

    It’s a little complicated. Sometimes the curl command further up works, but sometimes the redirection is done in an html meta tag or even with javascript. I have a messy python script that has a bunch of site specific code to bypass redirects and clean up tracking links. I can’t post it in its present condition (it has some private info embedded) but I’ve been wanting to clean it up and post it sometime.

    • jherazob@fedia.ioOP
      link
      fedilink
      arrow-up
      5
      ·
      2 days ago

      I was hoping for a self-hosted resource, not a remote API, since this is the Selfhosted community

  • John Colagioia@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    2 days ago

    I developed this script for creating permanent/static archives of social media exports, so it’s not a full solution - not a web service, expects file inputs, uses a probably incomplete list of shorteners to avoid pulling real pages - but it along with the shorteners.txt file in the same repository, iterating to find a domain not on the list, might at least inspire a solution, if it’s not good for your specific cases.