Migrate to modern requests.

Since 1.0, the `python-requests` library uses `response.json()` method instead of `response.json` attribute, and throws `ValueError` for JSON decoding failure instead of return `None`.

Please review the migration changes.