Skip to content

Instantly share code, notes, and snippets.

@Sarverott
Last active August 20, 2023 16:41
Show Gist options
  • Save Sarverott/2253c39dee4ff650a6b6f51b82d1490d to your computer and use it in GitHub Desktop.
Save Sarverott/2253c39dee4ff650a6b6f51b82d1490d to your computer and use it in GitHub Desktop.
extract MIME type table from [ https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types ] works in live dev console
var result=[];
document.querySelectorAll(".table-container table tr").forEach(function(x){
var currentRow=[];
x.childNodes.forEach(function(y){
if(y.nodeType==1){
currentRow.push(y.innerText)
}
})
result.push(currentRow);
});
console.log(JSON.stringify(result, null, "\t"))
var result={};
document.querySelectorAll(".table-container table tr").forEach(function(x){
var currentKey=null;
var currentValue=null;
x.childNodes.forEach(function(y){
if(y.nodeType==1){
if(currentKey===null){
currentKey=y.innerText;
}else{
currentValue=y.innerText;
}
}
})
if(currentValue.indexOf(" ")>0){
currentValue=currentValue.substring(0, currentValue.indexOf(' '))
}
if(currentValue.indexOf(";")>0){
currentValue=currentValue.substring(0, currentValue.indexOf(';'))
}
currentKey.split(", ").forEach(function(z){
result[z]=currentValue;
})
})
console.log(JSON.stringify(result, null, "\t"))
@Sarverott
Copy link
Author

result of test:

{
	"Extension": "MIME",
	".aac": "audio/aac",
	".abw": "application/x-abiword",
	".arc": "application/x-freearc",
	".avif": "image/avif",
	".avi": "video/x-msvideo",
	".azw": "application/vnd.amazon.ebook",
	".bin": "application/octet-stream",
	".bmp": "image/bmp",
	".bz": "application/x-bzip",
	".bz2": "application/x-bzip2",
	".cda": "application/x-cdf",
	".csh": "application/x-csh",
	".css": "text/css",
	".csv": "text/csv",
	".doc": "application/msword",
	".docx": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
	".eot": "application/vnd.ms-fontobject",
	".epub": "application/epub+zip",
	".gz": "application/gzip",
	".gif": "image/gif",
	".htm": "text/html",
	".html": "text/html",
	".ico": "image/vnd.microsoft.icon",
	".ics": "text/calendar",
	".jar": "application/java-archive",
	".jpeg": "image/jpeg",
	".jpg": "image/jpeg",
	".js": "text/javascript",
	".json": "application/json",
	".jsonld": "application/ld+json",
	".mid": "audio/midi,",
	".midi": "audio/midi,",
	".mjs": "text/javascript",
	".mp3": "audio/mpeg",
	".mp4": "video/mp4",
	".mpeg": "video/mpeg",
	".mpkg": "application/vnd.apple.installer+xml",
	".odp": "application/vnd.oasis.opendocument.presentation",
	".ods": "application/vnd.oasis.opendocument.spreadsheet",
	".odt": "application/vnd.oasis.opendocument.text",
	".oga": "audio/ogg",
	".ogv": "video/ogg",
	".ogx": "application/ogg",
	".opus": "audio/opus",
	".otf": "font/otf",
	".png": "image/png",
	".pdf": "application/pdf",
	".php": "application/x-httpd-php",
	".ppt": "application/vnd.ms-powerpoint",
	".pptx": "application/vnd.openxmlformats-officedocument.presentationml.presentation",
	".rar": "application/vnd.rar",
	".rtf": "application/rtf",
	".sh": "application/x-sh",
	".svg": "image/svg+xml",
	".tar": "application/x-tar",
	".tif": "image/tiff",
	".tiff": "image/tiff",
	".ts": "video/mp2t",
	".ttf": "font/ttf",
	".txt": "text/plain",
	".vsd": "application/vnd.visio",
	".wav": "audio/wav",
	".weba": "audio/webm",
	".webm": "video/webm",
	".webp": "image/webp",
	".woff": "font/woff",
	".woff2": "font/woff2",
	".xhtml": "application/xhtml+xml",
	".xls": "application/vnd.ms-excel",
	".xlsx": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
	".xml": "application/xml",
	".xul": "application/vnd.mozilla.xul+xml",
	".zip": "application/zip",
	".3gp": "video/3gpp",
	".3g2": "video/3gpp2",
	".7z": "application/x-7z-compressed"
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment