Skip to main content

File transport adapter for Requests

Project description

Requests-File is a transport adapter for use with the Requests Python library to allow local filesystem access via file:// URLs.

To use:

import requests
from requests_file import FileAdapter

s = requests.Session()
s.mount('file://', FileAdapter())

resp = s.get('file:///path/to/file')


  • Will open and read local files

  • Might set a Content-Length header

  • That’s about it

No encoding information is set in the response object, so be careful using Response.text: the chardet library will be used to convert the file to a unicode type and it may not detect what you actually want.

EACCES is converted to a 403 status code, and ENOENT is converted to a 404. All other IOError types are converted to a 400.


Contributions welcome! Feel free to open a pull request against


To maximise compatibility with Requests, this code is licensed under the Apache license. See LICENSE for more details.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

requests-file-2.0.0.tar.gz (6.9 kB view hashes)

Uploaded Source

Built Distribution

requests_file-2.0.0-py2.py3-none-any.whl (4.2 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page