summaryrefslogtreecommitdiffstats
path: root/python
Commit message (Collapse)AuthorAgeFilesLines
* pubmed: use untranslated title if translated not availableBryan Newbold2020-04-011-0/+6
| | | | | | | The primary motivation for this change is that fatcat *requires* a non-empty title for each release entity. Pubmed/Medline occasionally indexes just a VenacularTitle with no ArticleTitle for foreign publications, and currently those records don't end up in fatcat at all.
* importers: replace newlines in get_text() stringsBryan Newbold2020-04-014-23/+25
|
* importers: more string/get_text swapsBryan Newbold2020-03-283-27/+27
| | | | See previous pubmed commit for details.
* pubmed: bunch of .get_text() instead of .stringBryan Newbold2020-03-281-12/+12
| | | | | | | | | | | Yikes! Apparently when a tag has child tags, .string will return None instead of all the strings. .get_text() returns all of it: https://www.crummy.com/software/BeautifulSoup/bs4/doc/#get-text https://www.crummy.com/software/BeautifulSoup/bs4/doc/#string I've things like identifiers as .string, when we expect only a single string inside.
* ingest: more DOI patterns to treat as OABryan Newbold2020-03-281-0/+26
| | | | | | | These are journal/publisher patterns which we suspect to actually be OA based on the large quantity of papers that crawl successfully. The better long-term solution will be to flag containers in some way as OA (or "should crawl"), but this is a good short-term solution.
* Merge pull request #53 from EdwardBetts/spellingbnewbold2020-03-2713-20/+20
|\ | | | | Correct spelling mistakes
| * Correct spelling mistakesEdward Betts2020-03-2713-20/+20
| |
* | Merge branch 'bnewbold-400-bad-revisions' into 'master'Martin Czygan2020-03-262-2/+14
|\ \ | | | | | | | | | | | | catch ApiValueError in some generic API calls See merge request webgroup/fatcat!35
| * | catch ApiValueError in some generic API callsBryan Newbold2020-03-252-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The motivation for this change is to handle bogus revision IDs in URLs, which were causing 500 errors not 400 errors. Eg: https://qa.fatcat.wiki/file/rev/5d5d5162-b676-4f0a-968f-e19dadeaf96e%2B2019-11-27%2B13:49:51%2B0%2B6 I have no idea where these URLs are actually coming from, but they should be 4xx not 5xx. Investigating made me realize there is a whole category of ApiValueError exceptions we were not catching and should have been.
* | | Merge branch 'bnewbold-citeproc-fixes' into 'master'bnewbold2020-03-265-22/+72
|\ \ \ | | | | | | | | | | | | | | | | improve citeproc/CSL web interface See merge request webgroup/fatcat!36
| * | | improve citeproc/CSL web interfaceBryan Newbold2020-03-255-22/+72
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This tries to show the citeproc (bibtext, MLA, CSL-JSON) options for more releases, and not show the links when they would break. The primary motivation here is to work around two exceptions being thrown in prod every day (according to sentry): KeyError: 'role' ValueError: CLS requries some surname (family name) I'm guessing these are mostly coming from crawlers following the citeproc links on release landing pages.
* / / datacite: nameIdentifier corner caseBryan Newbold2020-03-261-1/+2
|/ / | | | | | | | | | | | | | | | | Works around a bug in production: AttributeError: 'NoneType' object has no attribute 'replace' (datacite.py:724) NOTE: there are no tests for this code path
* | cleanup unused code in fatcat_harvest.pyBryan Newbold2020-03-231-7/+0
| |
* | jalc: avoid meaningless pages valuesBryan Newbold2020-03-231-4/+8
| |
* | datacite: add year sanity restrictionsbnewbold2020-03-231-0/+7
| | | | | | | | | | | | | | | | | | Example of entities with bogus years: https://fatcat.wiki/release/search?q=doi_registrar%3Adatacite+year%3A%3E2100 We can do a clean-up task, but first need to prevent creation of new bad metadata.
* | pubmed: handle multiple ReferenceListBryan Newbold2020-03-203-1/+222
| | | | | | | | | | | | | | This resolves a situation noticed in prod where we were only importing/updating a single reference per article. Includes a regression test.
* | pubmed: update many more metadata fieldsBryan Newbold2020-03-191-0/+22
| | | | | | | | | | | | | | In particular, with daily updates in most cases the DOI will be registered first, then the entity updated with PMID when that is available. Often the pubmed metadata will be more complete, with abstracts etc, and we'll want those improvements.
* | crossref: skip stub OUP titleBryan Newbold2020-03-191-0/+8
| | | | | | | | | | | | It seems like OUP pre-registers DOIs with this place-holder title, then updates the Crossref metdata when the paper is actually published. We should wait until the real title is available before creating an entity.
* | ingest: always try some lancet journalsBryan Newbold2020-03-191-0/+3
| |
* | container lookup: link to issn portal searchMartin Czygan2020-03-181-4/+3
| | | | | | | | | | | | | | | | | | Example: https://fatcat.wiki/container/lookup?issnl=2007-1248 - the linked https://portal.issn.org/2007-1248 yields a "page not found", while search yields results: https://portal.issn.org/api/search?search[]=MUST=allissnbis=2007-1248
* | update front-page statsBryan Newbold2020-03-171-3/+3
| |
* | Merge branch 'martin-kafka-bs4-import' into 'master'Martin Czygan2020-03-1010-43/+428
|\ \ | | | | | | | | | | | | pubmed and arxiv harvest preparations See merge request webgroup/fatcat!28
| * | common: use smaller batch size since XML parsing may be slowMartin Czygan2020-03-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Address kafka tradeoff between long and short time-outs. Shorter time-outs would facilitate > consumer group re-balances and other consumer group state changes [...] in a reasonable human time-frame.
| * | pubmed: log to stderrMartin Czygan2020-03-101-1/+1
| | |
| * | pubmed: move mapping generation out of fetch_dateMartin Czygan2020-03-102-7/+10
| | | | | | | | | | | | | | | * fetch_date will fail on missing mapping * adjust tests (test will require access to pubmed ftp)
| * | harvest: fix imports from HarvestPubmedWorker cleanupMartin Czygan2020-03-102-4/+4
| | |
| * | pubmed: citations is a bit more preciseMartin Czygan2020-03-091-1/+1
| | | | | | | | | | | | | | | > Each day, NLM produces update files that include new, revised and deleted citations. -- ftp://ftp.ncbi.nlm.nih.gov/pubmed/updatefiles/README.txt
| * | pubmed: we sync from FTPMartin Czygan2020-03-091-1/+1
| | |
| * | oaipmh: HarvestPubmedWorker obsoleted by PubmedFTPWorkerMartin Czygan2020-03-091-34/+0
| | |
| * | fatcat_import: address potential hanging, if stdin is emptyMartin Czygan2020-03-091-0/+2
| | |
| * | more pubmed adjustmentsMartin Czygan2020-02-226-71/+197
| | | | | | | | | | | | | | | * regenerate map in continuous mode * add tests
| * | pubmed ftp: fix urlMartin Czygan2020-02-191-4/+6
| | |
| * | pubmed ftp harvest and KafkaBs4XmlPusherMartin Czygan2020-02-196-21/+307
| | | | | | | | | | | | | | | | | | | | | * add PubmedFTPWorker * utils are currently stored alongside pubmed (e.g. ftpretr, xmlstream) but may live elsewhere, as they are more generic * add KafkaBs4XmlPusher
* | | add --force-crawl flag to ingest toolBryan Newbold2020-03-021-0/+5
| |/ |/|
* | pipenv: lock authlib to less than v0.13; rebuild lock fileBryan Newbold2020-02-282-112/+109
| |
* | Merge branch 'bnewbold-elastic-v03b'Bryan Newbold2020-02-2610-190/+465
|\ \
| * | improve is_oa flag accuracyBryan Newbold2020-02-261-8/+4
| | | | | | | | | | | | | | | | | | Particularly, the ezb=green match seems mostly incorrect. Note that pmcid being assigned could still be in an embargo window?
| * | fix fatcat_transform state filtersBryan Newbold2020-02-261-4/+4
| | |
| * | bulk ES transform: skip non-active entitiesBryan Newbold2020-02-261-0/+8
| | |
| * | ES container last tweaksBryan Newbold2020-02-261-0/+3
| | |
| * | ES release: last minor tweaksBryan Newbold2020-02-261-2/+2
| | |
| * | ES updates: fix tests to accept archive.org in host/domainBryan Newbold2020-02-141-2/+3
| | |
| * | ES files: don't remove archive.org domains/hostsBryan Newbold2020-02-071-5/+0
| | |
| * | ES releases: host/domain fixesBryan Newbold2020-01-312-2/+5
| | |
| * | pipenv: lock zipp version to work around python3.6 requirementBryan Newbold2020-01-302-7/+20
| | |
| * | fix release es transform missing 'issue'Bryan Newbold2020-01-301-0/+1
| | |
| * | add upper-case work-around from kibana map joinBryan Newbold2020-01-301-0/+1
| | |
| * | tweak file ES archive.org domain trackingBryan Newbold2020-01-301-0/+6
| | |
| * | implement host+domain parsing for file ES transformBryan Newbold2020-01-302-13/+8
| | |
| * | pipenv: add tldextract (url parser) and update depsBryan Newbold2020-01-302-136/+159
| | |