-
-
Save asdqwe3124/430147201aa655e903840680fa16a5ab to your computer and use it in GitHub Desktop.
Convert Instagram media URL to media_id
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # This is Python port of this Javascript method: | |
| # https://github.com/notslang/instagram-id-to-url-segment/blob/master/lib/index.coffee | |
| url = "https://www.instagram.com/p/B8iwlG9pXHI/" | |
| # ----> use regexp to extract code from url | |
| code = "B8iwlG9pXHI" | |
| charmap = { | |
| 'A': '0', | |
| 'B': '1', | |
| 'C': '2', | |
| 'D': '3', | |
| 'E': '4', | |
| 'F': '5', | |
| 'G': '6', | |
| 'H': '7', | |
| 'I': '8', | |
| 'J': '9', | |
| 'K': 'a', | |
| 'L': 'b', | |
| 'M': 'c', | |
| 'N': 'd', | |
| 'O': 'e', | |
| 'P': 'f', | |
| 'Q': 'g', | |
| 'R': 'h', | |
| 'S': 'i', | |
| 'T': 'j', | |
| 'U': 'k', | |
| 'V': 'l', | |
| 'W': 'm', | |
| 'X': 'n', | |
| 'Y': 'o', | |
| 'Z': 'p', | |
| 'a': 'q', | |
| 'b': 'r', | |
| 'c': 's', | |
| 'd': 't', | |
| 'e': 'u', | |
| 'f': 'v', | |
| 'g': 'w', | |
| 'h': 'x', | |
| 'i': 'y', | |
| 'j': 'z', | |
| 'k': 'A', | |
| 'l': 'B', | |
| 'm': 'C', | |
| 'n': 'D', | |
| 'o': 'E', | |
| 'p': 'F', | |
| 'q': 'G', | |
| 'r': 'H', | |
| 's': 'I', | |
| 't': 'J', | |
| 'u': 'K', | |
| 'v': 'L', | |
| 'w': 'M', | |
| 'x': 'N', | |
| 'y': 'O', | |
| 'z': 'P', | |
| '0': 'Q', | |
| '1': 'R', | |
| '2': 'S', | |
| '3': 'T', | |
| '4': 'U', | |
| '5': 'V', | |
| '6': 'W', | |
| '7': 'X', | |
| '8': 'Y', | |
| '9': 'Z', | |
| '-': '$', | |
| '_': '_' | |
| } | |
| def instagram_code_to_media_id(code): | |
| code = "B8iwlG9pXHI" | |
| id = "" | |
| for letter in code: | |
| id += charmap[letter] | |
| alphabet = list(charmap.values()) | |
| number = 0 | |
| for char in id: | |
| number = number * 64 + alphabet.index(char) | |
| return number | |
| media_id = instagram_code_to_media_id(code) | |
| # media_id == 2243569220713804232 # success |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment