The thing is it fails without 'ignore' : 

Traceback (most recent call last):
  File "./sublime_plugin.py", line 337, in run_
  File "./request.py", line 42, in run
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 5956: ordinal not in range(128)

When getting http://www.google.fr/

I tried a try/except, with the following :

try:
  result_string = unicode(result, errors='strict')
except UnicodeDecodeError:
  result_string = str(result)

and it fails here :

sublime.set_clipboard(result_string)

I guess the best way is to filter out the bad characters by ignoring them as a http get can return non printable characters. We might create a specific binary output, but it won't go in the sublime clipboard...