After having trouble getting the example to work (with a valid key) returning simply with "Response has no content", I tried the test suite getting to work (from master branch), but unfortunately it seems to have similar problems with parsing the content (using Python 2.7.11/homebrew/Mac OS X 10.10.5):
running test
running egg_info
writing requirements to skyscanner.egg-info/requires.txt
writing skyscanner.egg-info/PKG-INFO
writing top-level names to skyscanner.egg-info/top_level.txt
writing dependency_links to skyscanner.egg-info/dependency_links.txt
reading manifest file 'skyscanner.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'LICENSE'
warning: no previously-included files matching '__pycache__' found under directory '*'
warning: no previously-included files matching '*.py[co]' found under directory '*'
writing manifest file 'skyscanner.egg-info/SOURCES.txt'
running build_ext
test_create_session (tests.test_skyscanner.TestCarHire) ... ok
test_get_result_json (tests.test_skyscanner.TestCarHire) ... ok
test_location_autosuggest_json (tests.test_skyscanner.TestCarHire) ... ok
test_location_autosuggest_xml (tests.test_skyscanner.TestCarHire) ... ok
test_create_session (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_price_by_date_json (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_price_by_date_xml (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_price_by_route_json (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_price_by_route_xml (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_quotes_json (tests.test_skyscanner.TestFlights) ... ok
test_get_cheapest_quotes_xml (tests.test_skyscanner.TestFlights) ... ok
test_get_grid_prices_by_date_json (tests.test_skyscanner.TestFlights) ... ok
test_get_grid_prices_by_date_xml (tests.test_skyscanner.TestFlights) ... ok
test_get_result_json (tests.test_skyscanner.TestFlights) ... 2016-06-28 23:06:44,396 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:06:49,489 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:06:53,145 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:06:56,948 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:06:58,715 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:00,077 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:01,467 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:02,934 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:04,302 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:05,598 - skyscanner.py:262 - WARNING - Response has no content.
2016-06-28 23:07:06,897 - skyscanner.py:262 - WARNING - Response has no content.
FAIL
test_get_result_xml (tests.test_skyscanner.TestFlights) ... ok
test_create_session (tests.test_skyscanner.TestHotels) ... ok
test_get_result_json (tests.test_skyscanner.TestHotels) ... ok
test_get_result_xml (tests.test_skyscanner.TestHotels) ... ok
test_location_autosuggest_json (tests.test_skyscanner.TestHotels) ... ok
test_location_autosuggest_xml (tests.test_skyscanner.TestHotels) ... ok
test_construct_params (tests.test_skyscanner.TestTransport) ... ok
test_create_session (tests.test_skyscanner.TestTransport) ... ok
test_default_resp_callback_json (tests.test_skyscanner.TestTransport) ... ok
test_default_resp_callback_xml (tests.test_skyscanner.TestTransport) ... ok
test_get_markets_json (tests.test_skyscanner.TestTransport) ... ok
test_get_markets_xml (tests.test_skyscanner.TestTransport) ... ok
test_location_autosuggest_json (tests.test_skyscanner.TestTransport) ... ok
test_location_autosuggest_xml (tests.test_skyscanner.TestTransport) ... ok
test_with_error_handling_graceful (tests.test_skyscanner.TestTransport) ... 2016-06-28 23:07:53,357 - skyscanner.py:262 - WARNING -
2016-06-28 23:07:53,357 - skyscanner.py:262 - WARNING -
2016-06-28 23:07:53,357 - skyscanner.py:270 - WARNING - Too many requests in the last minute.
2016-06-28 23:07:53,357 - skyscanner.py:270 - WARNING - Too many requests in the last minute.
2016-06-28 23:07:53,357 - skyscanner.py:270 - WARNING - Too many requests in the last minute.
2016-06-28 23:07:53,357 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,358 - skyscanner.py:270 - WARNING - Too many requests in the last minute.
2016-06-28 23:07:53,358 - skyscanner.py:231 - ERROR - Start tag expected, '<' not found, line 1, column 1
ok
test_with_error_handling_ignore (tests.test_skyscanner.TestTransport) ... 2016-06-28 23:07:53,358 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,358 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,358 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,358 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,358 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,358 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,358 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - None
2016-06-28 23:07:53,359 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - None
2016-06-28 23:07:53,359 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - None
2016-06-28 23:07:53,359 - skyscanner.py:279 - ERROR -
2016-06-28 23:07:53,359 - skyscanner.py:279 - ERROR -
ok
test_with_error_handling_strict (tests.test_skyscanner.TestTransport) ... 2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - No JSON object could be decoded
2016-06-28 23:07:53,359 - skyscanner.py:231 - ERROR - None
2016-06-28 23:07:53,360 - skyscanner.py:231 - ERROR - None
2016-06-28 23:07:53,360 - skyscanner.py:231 - ERROR - expected '>', line 1, column 57
2016-06-28 23:07:53,360 - skyscanner.py:231 - ERROR - expected '>', line 1, column 57
400
ok
======================================================================
FAIL: test_get_result_json (tests.test_skyscanner.TestFlights)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/niko/sandbox/python/skyscanner-python-sdk/tests/test_skyscanner.py", line 729, in test_get_result_json
self.assertTrue(None != self.result)
File "/Users/niko/sandbox/python/skyscanner-python-sdk/tests/test_skyscanner.py", line 58, in assertTrue
expr, msg=msg or self._default_message())
AssertionError: False is not true
----------------------------------------------------------------------
Ran 31 tests in 97.374s
FAILED (failures=1)