Blob Blame History Raw
diff --git a/komikku/servers/__init__.py b/komikku/servers/__init__.py
index 4ad1769..88c2d45 100644
--- a/komikku/servers/__init__.py
+++ b/komikku/servers/__init__.py
@@ -115,7 +115,7 @@ class Server:
             return None
 
         buffer = r.content
-        mime_type = magic.from_buffer(buffer[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(buffer[:128])).mime_type
 
         if not mime_type.startswith('image'):
             return None
diff --git a/komikku/servers/centraldemangas.py b/komikku/servers/centraldemangas.py
index 6d31042..e7b2931 100644
--- a/komikku/servers/centraldemangas.py
+++ b/komikku/servers/centraldemangas.py
@@ -50,7 +50,7 @@ class Centraldemangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -126,7 +126,7 @@ class Centraldemangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -169,7 +169,7 @@ class Centraldemangas(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         imagename = url.split('/')[-1]
 
         return (imagename, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -188,7 +188,7 @@ class Centraldemangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/dbmultiverse.py b/komikku/servers/dbmultiverse.py
index 531c89c..fc5b49b 100644
--- a/komikku/servers/dbmultiverse.py
+++ b/komikku/servers/dbmultiverse.py
@@ -39,7 +39,7 @@ class Dbmultiverse(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -91,7 +91,7 @@ class Dbmultiverse(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -130,7 +130,7 @@ class Dbmultiverse(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
diff --git a/komikku/servers/desu.py b/komikku/servers/desu.py
index cf8ef78..385161a 100644
--- a/komikku/servers/desu.py
+++ b/komikku/servers/desu.py
@@ -115,7 +115,7 @@ class Desu(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('/')[-1]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
diff --git a/komikku/servers/genkan.py b/komikku/servers/genkan.py
index c158273..f1dadca 100644
--- a/komikku/servers/genkan.py
+++ b/komikku/servers/genkan.py
@@ -34,7 +34,7 @@ class Genkan(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -86,7 +86,7 @@ class Genkan(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -124,7 +124,7 @@ class Genkan(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('/')[-1]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
diff --git a/komikku/servers/hatigarmscans.py b/komikku/servers/hatigarmscans.py
index e87e89c..923a9e7 100644
--- a/komikku/servers/hatigarmscans.py
+++ b/komikku/servers/hatigarmscans.py
@@ -51,7 +51,7 @@ class Hatigarmscans(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -131,7 +131,7 @@ class Hatigarmscans(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -159,7 +159,7 @@ class Hatigarmscans(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['image'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -177,7 +177,7 @@ class Hatigarmscans(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/plain':
             return None
diff --git a/komikku/servers/jaiminisbox.py b/komikku/servers/jaiminisbox.py
index b2c5766..e08db0f 100644
--- a/komikku/servers/jaiminisbox.py
+++ b/komikku/servers/jaiminisbox.py
@@ -46,7 +46,7 @@ class Jaiminisbox(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -119,7 +119,7 @@ class Jaiminisbox(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -170,7 +170,7 @@ class Jaiminisbox(Server):
         if r is None:
             return None, None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('?')[0].split('/')[-1]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -186,7 +186,7 @@ class Jaiminisbox(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -212,7 +212,7 @@ class Jaiminisbox(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/japscan.py b/komikku/servers/japscan.py
index 5374ecf..af408ea 100644
--- a/komikku/servers/japscan.py
+++ b/komikku/servers/japscan.py
@@ -90,7 +90,7 @@ class Japscan(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -177,7 +177,7 @@ class Japscan(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -233,7 +233,7 @@ class Japscan(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (imagename, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -251,7 +251,7 @@ class Japscan(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/mangadex.py b/komikku/servers/mangadex.py
index b80805a..490d152 100644
--- a/komikku/servers/mangadex.py
+++ b/komikku/servers/mangadex.py
@@ -265,7 +265,7 @@ class Mangadex(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('?')[0].split('/')[-1]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -284,7 +284,7 @@ class Mangadex(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -333,7 +333,7 @@ class Mangadex(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/mangaeden.py b/komikku/servers/mangaeden.py
index 05881e2..c6cb727 100644
--- a/komikku/servers/mangaeden.py
+++ b/komikku/servers/mangaeden.py
@@ -52,7 +52,7 @@ class Mangaeden(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -128,7 +128,7 @@ class Mangaeden(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -160,7 +160,7 @@ class Mangaeden(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         imagename = page['image'].split('/')[-1]
 
         return (imagename, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -179,7 +179,7 @@ class Mangaeden(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -202,7 +202,7 @@ class Mangaeden(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/mangakawaii.py b/komikku/servers/mangakawaii.py
index 5bf0f6d..be2ce27 100644
--- a/komikku/servers/mangakawaii.py
+++ b/komikku/servers/mangakawaii.py
@@ -44,7 +44,7 @@ class Mangakawaii(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -122,7 +122,7 @@ class Mangakawaii(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -160,7 +160,7 @@ class Mangakawaii(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['slug'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -178,7 +178,7 @@ class Mangakawaii(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/mangalib.py b/komikku/servers/mangalib.py
index af604a0..827060d 100644
--- a/komikku/servers/mangalib.py
+++ b/komikku/servers/mangalib.py
@@ -46,7 +46,7 @@ class Mangalib(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -125,7 +125,7 @@ class Mangalib(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -160,7 +160,7 @@ class Mangalib(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('/')[-1].split('?')[0]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -179,7 +179,7 @@ class Mangalib(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -200,7 +200,7 @@ class Mangalib(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/manganelo.py b/komikku/servers/manganelo.py
index cb9c632..978d740 100644
--- a/komikku/servers/manganelo.py
+++ b/komikku/servers/manganelo.py
@@ -46,7 +46,7 @@ class Manganelo(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -119,7 +119,7 @@ class Manganelo(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -147,7 +147,7 @@ class Manganelo(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['image'].split('/')[-1], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -165,7 +165,7 @@ class Manganelo(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/mangaplus.py b/komikku/servers/mangaplus.py
index 6e86e8b..7754f2d 100644
--- a/komikku/servers/mangaplus.py
+++ b/komikku/servers/mangaplus.py
@@ -65,7 +65,7 @@ class Mangaplus(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'application/octet-stream':
             return None
@@ -109,7 +109,7 @@ class Mangaplus(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'application/octet-stream':
             return None
@@ -152,7 +152,7 @@ class Mangaplus(Server):
         else:
             content = r.content
 
-        mime_type = magic.from_buffer(content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(content[:128])).mime_type
         image_name = page['image'].split('?')[0].split('/')[-1]
 
         return (image_name, content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -171,7 +171,7 @@ class Mangaplus(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'application/octet-stream':
             return None
@@ -198,7 +198,7 @@ class Mangaplus(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'application/octet-stream':
             return None
diff --git a/komikku/servers/mangarock.py b/komikku/servers/mangarock.py
index c89fd4c..80095d3 100644
--- a/komikku/servers/mangarock.py
+++ b/komikku/servers/mangarock.py
@@ -148,7 +148,7 @@ class Mangarock(Server):
 
         image_name = page['image'].split('/')[-1]
         buffer = r.content
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if mime_type == 'application/octet-stream':
             buffer = convert_mri_data_to_webp_buffer(buffer)
diff --git a/komikku/servers/mangasee.py b/komikku/servers/mangasee.py
index 813b991..96ee49a 100644
--- a/komikku/servers/mangasee.py
+++ b/komikku/servers/mangasee.py
@@ -43,7 +43,7 @@ class Mangasee(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -113,7 +113,7 @@ class Mangasee(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -148,7 +148,7 @@ class Mangasee(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (image_url.split('/')[-1], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -166,7 +166,7 @@ class Mangasee(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/plain':
             return None
diff --git a/komikku/servers/ninemanga.py b/komikku/servers/ninemanga.py
index 49874d5..730dfd4 100644
--- a/komikku/servers/ninemanga.py
+++ b/komikku/servers/ninemanga.py
@@ -53,7 +53,7 @@ class Ninemanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.url == self.base_url:
             # Manga page doesn't exist, we have been redirected to homepage
@@ -128,7 +128,7 @@ class Ninemanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -165,7 +165,7 @@ class Ninemanga(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (imagename, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -183,7 +183,7 @@ class Ninemanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/peppercarrot.py b/komikku/servers/peppercarrot.py
index 74ce576..fd526be 100644
--- a/komikku/servers/peppercarrot.py
+++ b/komikku/servers/peppercarrot.py
@@ -60,7 +60,7 @@ class Peppercarrot(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -146,7 +146,7 @@ class Peppercarrot(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['slug'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
diff --git a/komikku/servers/readmanga.py b/komikku/servers/readmanga.py
index 5eb51f8..43472ae 100644
--- a/komikku/servers/readmanga.py
+++ b/komikku/servers/readmanga.py
@@ -40,7 +40,7 @@ class Readmanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -120,7 +120,7 @@ class Readmanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -163,7 +163,7 @@ class Readmanga(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('/')[-1].split('?')[0]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -182,7 +182,7 @@ class Readmanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -203,7 +203,7 @@ class Readmanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/scanonepiece.py b/komikku/servers/scanonepiece.py
index 4640c4e..d28fe65 100644
--- a/komikku/servers/scanonepiece.py
+++ b/komikku/servers/scanonepiece.py
@@ -43,7 +43,7 @@ class Scanonepiece(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -124,7 +124,7 @@ class Scanonepiece(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -152,7 +152,7 @@ class Scanonepiece(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['image'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -170,7 +170,7 @@ class Scanonepiece(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/plain':
             return None
diff --git a/komikku/servers/scantrad.py b/komikku/servers/scantrad.py
index a7ec47b..f621269 100644
--- a/komikku/servers/scantrad.py
+++ b/komikku/servers/scantrad.py
@@ -44,7 +44,7 @@ class Scantrad(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -102,7 +102,7 @@ class Scantrad(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.url[:-1] == self.base_url:
             # Chapter page doesn't exist, we have been redirected to homepage
@@ -137,7 +137,7 @@ class Scantrad(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
         image_name = page['image'].split('/')[-1]
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
@@ -153,7 +153,7 @@ class Scantrad(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/submanga.py b/komikku/servers/submanga.py
index c986f46..1681be5 100644
--- a/komikku/servers/submanga.py
+++ b/komikku/servers/submanga.py
@@ -43,7 +43,7 @@ class Submanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -118,7 +118,7 @@ class Submanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -146,7 +146,7 @@ class Submanga(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['image'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -164,7 +164,7 @@ class Submanga(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/unionmangas.py b/komikku/servers/unionmangas.py
index 78ccf85..ab2d997 100644
--- a/komikku/servers/unionmangas.py
+++ b/komikku/servers/unionmangas.py
@@ -40,7 +40,7 @@ class Unionmangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -110,7 +110,7 @@ class Unionmangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if 'leitor' not in r.url:
             # Chapter page doesn't exist, we have been redirected to manga page
@@ -144,7 +144,7 @@ class Unionmangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (page['image'], r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)
 
@@ -159,7 +159,7 @@ class Unionmangas(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/webtoon.py b/komikku/servers/webtoon.py
index fc39bfd..90ceeba 100644
--- a/komikku/servers/webtoon.py
+++ b/komikku/servers/webtoon.py
@@ -72,7 +72,7 @@ class Webtoon(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -142,7 +142,7 @@ class Webtoon(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -171,7 +171,7 @@ class Webtoon(Server):
         if r is None:
             return []
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return []
@@ -210,7 +210,7 @@ class Webtoon(Server):
         if r is None:
             return (None, None)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code == 200 and mime_type.startswith('image'):
             return (page['image'].split('/')[-1].split('?')[0], r.content)
@@ -231,7 +231,7 @@ class Webtoon(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -275,7 +275,7 @@ class Webtoon(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
diff --git a/komikku/servers/xkcd.py b/komikku/servers/xkcd.py
index e40ad00..54518a6 100644
--- a/komikku/servers/xkcd.py
+++ b/komikku/servers/xkcd.py
@@ -40,7 +40,7 @@ class Xkcd(Server):
         if r is None:
             return None
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         if r.status_code != 200 or mime_type != 'text/html':
             return None
@@ -127,7 +127,7 @@ class Xkcd(Server):
                 return (None, None)
             image_name = '{0}-alt-text.png'.format(chapter_slug)
 
-        mime_type = magic.from_buffer(r.content[:128], mime=True)
+        mime_type = magic.detect_from_content(bytes(r.content[:128])).mime_type
 
         return (image_name, r.content) if r.status_code == 200 and mime_type.startswith('image') else (None, None)