Skip to main content

a library for scraping things

Project description

https://travis-ci.org/jamesturk/scrapelib.svg?branch=master https://coveralls.io/repos/jamesturk/scrapelib/badge.png?branch=master https://img.shields.io/pypi/v/scrapelib.svg Documentation Status

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


Download files

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

Source Distribution

scrapelib-1.2.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

scrapelib-1.2.0-py2.py3-none-any.whl (16.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file scrapelib-1.2.0.tar.gz.

File metadata

  • Download URL: scrapelib-1.2.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for scrapelib-1.2.0.tar.gz
Algorithm Hash digest
SHA256 9a30f1404f3473488e1b9af99824316d4c79a94cc39e99e1f9c331a7fae15e8d
MD5 70d9160868463cd452b90a24f25bcd2e
BLAKE2b-256 84df60b520ee1af5180fe93b07e1c1b27263bec1b141fd878ff8f8eca969753f

See more details on using hashes here.

File details

Details for the file scrapelib-1.2.0-py2.py3-none-any.whl.

File metadata

  • Download URL: scrapelib-1.2.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0

File hashes

Hashes for scrapelib-1.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1984cb3e1c72eab9130c2cb7c4b17dcff08992bd4c829d59e6d48fcf7c4f7b16
MD5 fcce2776457f78e7b7049ab9cdef579c
BLAKE2b-256 a085ca29e44748abe598daffe1a6dad8a175f3acff57fe09daab040ab0bf604a

See more details on using hashes here.

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