diff --git a/setup.py b/setup.py
index <HASH>..<HASH> 100755
--- a/setup.py
+++ b/setup.py
@@ -2,6 +2,7 @@
 # -*- encoding:utf-8 -*-
 from __future__ import absolute_import, division, print_function, unicode_literals
 
+import codecs
 import re
 
 from setuptools import setup
@@ -11,16 +12,17 @@ def get_version(filename):
     """
     Return package version as listed in `__version__` in `filename`.
     """
-    init_py = open(filename).read()
+    with codecs.open(filename, 'r', 'utf-8') as fp:
+        init_py = fp.read()
     return re.search("__version__ = ['\"]([^'\"]+)['\"]", init_py).group(1)
 
 
 version = get_version('flake8_tidy_imports.py')
 
-with open('README.rst') as readme_file:
+with codecs.open('README.rst', 'r', 'utf-8') as readme_file:
     readme = readme_file.read()
 
-with open('HISTORY.rst') as history_file:
+with codecs.open('HISTORY.rst', 'r', 'utf-8') as history_file:
     history = history_file.read()
 
 setup(
setup.py - use codecs.open and context manager