diff --git a/swh/loader/pypi/converters.py b/swh/loader/pypi/converters.py
index 69411f9887ff6db1db44534dc09c0dec6b687431..8f7a4c70f8723b6aa694b0c7bccb4ca379f034a2 100644
--- a/swh/loader/pypi/converters.py
+++ b/swh/loader/pypi/converters.py
@@ -4,6 +4,9 @@
 # See top-level LICENSE file for more information
 
 
+EMPTY_AUTHOR = {'fullname': b'', 'name': None, 'email': None}
+
+
 def info(data):
     """Given a dict of a PyPI project information, returns a project
        subset.
@@ -48,15 +51,16 @@ def author(data):
         swh-model dict representing a person.
 
     """
-    name = data['author']
-    email = data['author_email']
+    name = data.get('author')
+    email = data.get('author_email')
+
     if email:
         fullname = '%s <%s>' % (name, email)
     else:
         fullname = name
 
     if not fullname:
-        return {'fullname': b'', 'name': None, 'email': None}
+        return EMPTY_AUTHOR
 
     if fullname:
         fullname = fullname.encode('utf-8')
diff --git a/swh/loader/pypi/tests/test_converters.py b/swh/loader/pypi/tests/test_converters.py
index cfced07f8209a6d62644d1a5b3a531fe44d08724..0e2f80406eafffab71698a309452fae3f4c46190 100644
--- a/swh/loader/pypi/tests/test_converters.py
+++ b/swh/loader/pypi/tests/test_converters.py
@@ -6,7 +6,7 @@
 from unittest import TestCase
 from nose.tools import istest
 
-from swh.loader.pypi.converters import author, info
+from swh.loader.pypi.converters import author, EMPTY_AUTHOR
 
 from .common import WithProjectTest
 
@@ -43,6 +43,23 @@ class Test(WithProjectTest):
 
         self.assertEqual(expected_author, actual_author)
 
+    @istest
+    def no_author(self):
+        actual_author = author({})
+
+        self.assertEqual(EMPTY_AUTHOR, actual_author)
+
+    @istest
+    def partial_author(self):
+        actual_author = author({'author': 'someone'})
+        expected_author = {
+            'name': b'someone',
+            'fullname': b'someone',
+            'email': None,
+        }
+
+        self.assertEqual(expected_author, actual_author)
+
 
 class ParseAuthorTest(TestCase):
     @istest