Use file(1) to determine the mime type
This commit is contained in:
parent
c2d48d48b1
commit
bf691d4b0c
|
@ -1,18 +1,19 @@
|
|||
#!python3
|
||||
#!/usr/bin/python3
|
||||
import struct
|
||||
import socket
|
||||
import os
|
||||
import sys
|
||||
import mimetypes
|
||||
import subprocess
|
||||
|
||||
s = socket.socket(socket.AF_UNIX)
|
||||
s.connect(os.path.join(os.environ["HOME"], ".mailcap.sock"))
|
||||
|
||||
file = sys.argv[1]
|
||||
mime = mimetypes.guess_type(file)[0]
|
||||
data = open(file, "rb").read()
|
||||
filename = sys.argv[1]
|
||||
mime = subprocess.run(["file", "-i", "-b", filename], check=True, stdout=subprocess.PIPE).stdout.decode('utf-8')
|
||||
data = open(filename, "rb").read()
|
||||
|
||||
def strtr(x, c="B"):
|
||||
return struct.pack(c, len(x)) + x
|
||||
|
||||
s.sendall(strtr(file.encode('utf-8')) + strtr(mime.encode('utf-8')) + strtr(data, "!I"))
|
||||
s.sendall(strtr(filename.encode('utf-8')) + strtr(mime.encode('utf-8')) + strtr(data, "!I"))
|
||||
|
|
Loading…
Reference in New Issue
Block a user