pywb.recorder package

Submodules

pywb.recorder.filters module

class pywb.recorder.filters.CollectionFilter(accept_colls)[source]

Bases: pywb.recorder.filters.SkipDefaultFilter

skip_response(path, req_headers, resp_headers, params)[source]
class pywb.recorder.filters.ExcludeHttpOnlyCookieHeaders[source]

Bases: object

HTTPONLY_RX = re.compile(';\\s*HttpOnly\\s*(;|$)', re.IGNORECASE)
class pywb.recorder.filters.ExcludeSpecificHeaders(exclude_headers=None)[source]

Bases: object

class pywb.recorder.filters.SkipDefaultFilter[source]

Bases: object

skip_request(path, req_headers)[source]
skip_response(path, req_headers, resp_headers, params)[source]
class pywb.recorder.filters.SkipDupePolicy[source]

Bases: object

class pywb.recorder.filters.SkipRangeRequestFilter[source]

Bases: pywb.recorder.filters.SkipDefaultFilter

skip_request(path, req_headers)[source]
class pywb.recorder.filters.WriteDupePolicy[source]

Bases: object

class pywb.recorder.filters.WriteRevisitDupePolicy[source]

Bases: object

pywb.recorder.multifilewarcwriter module

class pywb.recorder.multifilewarcwriter.MultiFileWARCWriter(dir_template, filename_template=None, max_size=0, max_idle_secs=1800, *args, **kwargs)[source]

Bases: warcio.warcwriter.BaseWARCWriter

FILE_TEMPLATE = 'rec-{timestamp}-{hostname}.warc.gz'
allow_new_file(filename, params)[source]
close()[source]
close_file(match_filename)[source]
close_idle_files()[source]
close_key(dir_key)[source]
get_dir_key(params)[source]
get_new_filename(dir_, params)[source]
iter_open_files()[source]
write_record(record, params=None)[source]
write_stream_to_file(params, stream)[source]
class pywb.recorder.multifilewarcwriter.PerRecordWARCWriter(*args, **kwargs)[source]

Bases: pywb.recorder.multifilewarcwriter.MultiFileWARCWriter

pywb.recorder.recorderapp module

class pywb.recorder.recorderapp.RecorderApp(upstream_host, writer, skip_filters=None, **kwargs)[source]

Bases: object

static create_default_filters(kwargs)[source]
static default_create_buffer(params, name)[source]
handle_call(environ, start_response)[source]
send_error(exc, start_response)[source]
send_message(msg, status, start_response)[source]
class pywb.recorder.recorderapp.ReqWrapper(stream, req_headers, params, create_func)[source]

Bases: pywb.recorder.recorderapp.Wrapper

close()[source]
class pywb.recorder.recorderapp.RespWrapper(stream, headers, req, params, queue, path, create_func)[source]

Bases: pywb.recorder.recorderapp.Wrapper

close()[source]
class pywb.recorder.recorderapp.Wrapper(stream, params, create_func)[source]

Bases: object

read(*args, **kwargs)[source]

pywb.recorder.redisindexer module

class pywb.recorder.redisindexer.RedisPendingCounterTempBuffer(max_size, redis_url, params, name, timeout=30)[source]

Bases: tempfile.SpooledTemporaryFile

close()[source]
write(buf)[source]
class pywb.recorder.redisindexer.WritableRedisIndexer(*args, **kwargs)[source]

Bases: pywb.warcserver.index.indexsource.RedisIndexSource

add_urls_to_index(stream, params, filename, length)[source]
add_warc_file(full_filename, params)[source]
lookup_revisit(lookup_params, digest, url, iso_dt)[source]

Module contents