Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | initial work on PDF extraction worker | Bryan Newbold | 2020-06-16 | 2 | -1/+158 | |
| | | | | | This worker fetches full PDFs, then extracts thumbnails, raw text, and PDF metadata. Similar to GROBID worker. | |||||
* | pdf_thumbnail script: demonstrate PDF thumbnail generation | Bryan Newbold | 2020-06-16 | 1 | -0/+35 | |
| | ||||||
* | refactor worker fetch code into wrapper class | Bryan Newbold | 2020-06-16 | 3 | -141/+111 | |
| | ||||||
* | rename KafkaGrobidSink -> KafkaCompressSink | Bryan Newbold | 2020-06-16 | 3 | -3/+3 | |
| | ||||||
* | remove deprecated kafka_grobid.py worker | Bryan Newbold | 2020-05-26 | 1 | -331/+0 | |
| | | | | | | All use of pykafka was refactored to use the confluent library some time ago. And all kafka workers have been using the newer sandcrawler style worker for some time. | |||||
* | pipenv: remove old python3.5 cruft; add mypy | Bryan Newbold | 2020-05-26 | 2 | -185/+196 | |
| | ||||||
* | start a python Makefile | Bryan Newbold | 2020-05-19 | 1 | -0/+15 | |
| | ||||||
* | handle UnboundLocalError in HTML parsing | Bryan Newbold | 2020-05-19 | 1 | -1/+4 | |
| | ||||||
* | first iteration of oai2ingestrequest script | Bryan Newbold | 2020-05-05 | 1 | -0/+137 | |
| | ||||||
* | hotfix for html meta extract codepath | Bryan Newbold | 2020-05-03 | 1 | -1/+1 | |
| | | | | Didn't test last commit before pushing; bad Bryan! | |||||
* | ingest: handle partial citation_pdf_url tag | Bryan Newbold | 2020-05-03 | 1 | -0/+3 | |
| | | | | | | | | Eg: https://www.cureus.com/articles/29935-a-nomogram-for-the-rapid-prediction-of-hematocrit-following-blood-loss-and-fluid-shifts-in-neonates-infants-and-adults Has: <meta name="citation_pdf_url"/> | |||||
* | workers: add missing want() dataflow path | Bryan Newbold | 2020-04-30 | 1 | -0/+9 | |
| | ||||||
* | ingest: don't 'want' non-PDF ingest | Bryan Newbold | 2020-04-30 | 1 | -0/+5 | |
| | ||||||
* | timeouts: don't push through None error messages | Bryan Newbold | 2020-04-29 | 1 | -2/+2 | |
| | ||||||
* | timeout message implementation for GROBID and ingest workers | Bryan Newbold | 2020-04-27 | 2 | -0/+18 | |
| | ||||||
* | worker timeout wrapper, and use for kafka | Bryan Newbold | 2020-04-27 | 1 | -2/+40 | |
| | ||||||
* | fix KeyError in HTML PDF URL extraction | Bryan Newbold | 2020-04-17 | 1 | -1/+1 | |
| | ||||||
* | persist: only GROBID updates file_meta, not file-result | Bryan Newbold | 2020-04-16 | 1 | -1/+1 | |
| | | | | | | | | | The hope here is to reduce deadlocks in production (on aitio). As context, we are only doing "updates" until the entire file_meta table is filled in with full metadata anyways; updates are wasteful of resources, and most inserts we have seen the file before, so should be doing "DO NOTHING" if the SHA1 is already in the table. | |||||
* | batch/multiprocess for ZipfilePusher | Bryan Newbold | 2020-04-16 | 2 | -5/+26 | |
| | ||||||
* | pipenv: update to python3.7 | Bryan Newbold | 2020-04-15 | 2 | -197/+202 | |
| | ||||||
* | COVID-19 chinese paper ingest | Bryan Newbold | 2020-04-15 | 1 | -0/+83 | |
| | ||||||
* | ingest: quick hack to capture CNKI outlinks | Bryan Newbold | 2020-04-13 | 1 | -2/+9 | |
| | ||||||
* | html: attempt at CNKI href extraction | Bryan Newbold | 2020-04-13 | 1 | -0/+11 | |
| | ||||||
* | unpaywall2ingestrequest: canonicalize URL | Bryan Newbold | 2020-04-07 | 1 | -1/+9 | |
| | ||||||
* | ia: set User-Agent for replay fetch from wayback | Bryan Newbold | 2020-03-29 | 1 | -0/+5 | |
| | | | | | | | Did this for all the other "client" helpers, but forgot to for wayback replay. Was starting to get "445" errors from wayback. | |||||
* | ingest: block another large domain (and DOI prefix) | Bryan Newbold | 2020-03-27 | 1 | -0/+2 | |
| | ||||||
* | ingest: better spn2 pending error code | Bryan Newbold | 2020-03-27 | 1 | -0/+2 | |
| | ||||||
* | ingest: eurosurveillance PDF parser | Bryan Newbold | 2020-03-25 | 1 | -0/+11 | |
| | ||||||
* | ia: more conservative use of clean_url() | Bryan Newbold | 2020-03-24 | 1 | -3/+5 | |
| | | | | | | Fixes AttributeError: 'NoneType' object has no attribute 'strip' Seen in production on the lookup_resource code path. | |||||
* | ingest: clean_url() in more places | Bryan Newbold | 2020-03-23 | 3 | -1/+6 | |
| | | | | | | Some 'cdx-error' results were due to URLs with ':' after the hostname or trailing newline ("\n") characters in the URL. This attempts to work around this categroy of error. | |||||
* | skip-db option also for worker | Bryan Newbold | 2020-03-19 | 1 | -0/+4 | |
| | ||||||
* | persist grobid: add option to skip S3 upload | Bryan Newbold | 2020-03-19 | 2 | -7/+14 | |
| | | | | | | | Motivation for this is that current S3 target (minio) is overloaded, with too many files on a single partition (80 million+). Going to look in to seaweedfs and other options, but for now stopping minio persist. Data is all stored in kafka anyways. | |||||
* | ingest: log every URL (from ia code side) | Bryan Newbold | 2020-03-18 | 1 | -0/+1 | |
| | ||||||
* | implement (unused) force_get flag for SPN2 | Bryan Newbold | 2020-03-18 | 2 | -4/+19 | |
| | | | | | | | | | I hoped this feature would make it possible to crawl journals.lww.com PDFs, because the token URLs work with `wget`, but it still doesn't seem to work. Maybe because of user agent? Anyways, this feature might be useful for crawling efficiency, so adding to master. | |||||
* | work around local redirect (resource.location) | Bryan Newbold | 2020-03-17 | 1 | -1/+6 | |
| | | | | | | Some redirects are host-local. This patch crudely detects this (full-path redirects starting with "/" only), and appends the URL to the host of the original URL. | |||||
* | Merge branch 'martin-abstract-class-process' into 'master' | bnewbold | 2020-03-12 | 1 | -0/+6 | |
|\ | | | | | | | | | workers: add explicit process to base class See merge request webgroup/sandcrawler!25 | |||||
| * | workers: add explicit process to base class | Martin Czygan | 2020-03-12 | 1 | -0/+6 | |
| | | | | | | | | | | | | | | | | As per https://docs.python.org/3/library/exceptions.html#NotImplementedError > In user defined base classes, abstract methods should raise this exception when they require derived classes to override the method [...]. | |||||
* | | pipenv: work around zipp issue | Bryan Newbold | 2020-03-10 | 2 | -4/+16 | |
| | | ||||||
* | | pipenv: add urlcanon; update pipefile.lock | Bryan Newbold | 2020-03-10 | 2 | -209/+221 | |
| | | ||||||
* | | use local env in python scripts | Bryan Newbold | 2020-03-10 | 3 | -3/+3 | |
| | | | | | | | | | | Without this correct/canonical shebang invocation, virtualenvs (pipenv) don't work. | |||||
* | | url cleaning (canonicalization) for ingest base_url | Bryan Newbold | 2020-03-10 | 4 | -4/+21 | |
| | | | | | | | | | | | | | | | | | | | | | | As mentioned in comment, this first version does not re-write the URL in the `base_url` field. If we did so, then ingest_request rows would not SQL JOIN to ingest_file_result rows, which we wouldn't want. In the future, behaviour should maybe be to refuse to process URLs that aren't clean (eg, if base_url != clean_url(base_url)) and return a 'bad-url' status or soemthing. Then we would only accept clean URLs in both tables, and clear out all old/bad URLs with a cleanup script. | |||||
* | | ingest_file: --no-spn2 flag for single command | Bryan Newbold | 2020-03-10 | 1 | -1/+6 | |
|/ | ||||||
* | ingestrequest_row2json: skip on unicode errors | Bryan Newbold | 2020-03-05 | 1 | -1/+4 | |
| | ||||||
* | fixes to ingest-request persist | Bryan Newbold | 2020-03-05 | 2 | -4/+2 | |
| | ||||||
* | persist: ingest_request tool (with no ingest_file_result) | Bryan Newbold | 2020-03-05 | 3 | -1/+48 | |
| | ||||||
* | ingest_tool: force-recrawl arg | Bryan Newbold | 2020-03-05 | 1 | -0/+5 | |
| | ||||||
* | ia: catch wayback ChunkedEncodingError | Bryan Newbold | 2020-03-05 | 1 | -0/+3 | |
| | ||||||
* | ingest: make content-decoding more robust | Bryan Newbold | 2020-03-03 | 1 | -1/+2 | |
| | ||||||
* | make gzip content-encoding path more robust | Bryan Newbold | 2020-03-03 | 1 | -1/+10 | |
| | ||||||
* | ingest: crude content-encoding support | Bryan Newbold | 2020-03-02 | 1 | -1/+19 | |
| | | | | | | This perhaps should be handled in IA wrapper tool directly, instead of in ingest code. Or really, possibly a bug in wayback python library or SPN? |