a library for scraping things
Project description
scrapelib is a library for making requests to less-than-reliable websites, it is implemented (as of 0.7) as a wrapper around requests.
scrapelib originated as part of the Open States project to scrape the websites of all 50 state legislatures and as a result was therefore designed with features desirable when dealing with sites that have intermittent errors or require rate-limiting.
Advantages of using scrapelib over alternatives like httplib2 simply using requests as-is:
All of the power of the suberb requests library.
HTTP, HTTPS, and FTP requests via an identical API
support for simple caching with pluggable cache backends
request throttling
configurable retries for non-permanent site failures
Written by James Turk <dev@jamesturk.net>, thanks to Michael Stephens for initial urllib2/httplib2 version
See https://github.com/jamesturk/scrapelib/graphs/contributors for contributors.
Requirements
python 2.7, >=3.3
requests >= 2.0 (earlier versions may work but aren’t tested)
Example Usage
Documentation: http://scrapelib.readthedocs.org/en/latest/
import scrapelib s = scrapelib.Scraper(requests_per_minute=10) # Grab Google front page s.get('http://google.com') # Will be throttled to 10 HTTP requests per minute while True: s.get('http://example.com')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for scrapelib-1.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4467ffcfcda3246679563cf7c2bdf9546169bc3e727c51eff04818fc05ee6bd |
|
MD5 | b695215240271dc6d79106961cdce19a |
|
BLAKE2b-256 | 6b5eaca3bcddd32ff0b572ae87d4b0c95790c43e2276e8315eee07d8b5afa34d |