Skip to main content

a small command-line tool to get scientific papers from their references

Project description

getpaper

description

getpaper is a small command-line tool writen in python to get scientific papers from their references. It uses the journals' search engine, automatically send to them a well formatted request, and scraps the answer (using BeautifulSoup) to get the paper url. If a paper is found, it opens its url on a new tab in the web browser. If there is an error, it opens the paper search page.

example

# general synthax :
$ getpaper PRA 46 2668
$ getpaper Nature 519 211
$ getpaper arxiv 1706 07781

# get paper using DOI :
$ getpaper doi 10.1103/physrevx.8.031054

to get the list of implemented journal :

getpaper journals # returns list of journals

available journals : PRL, PRX, RMP, PRA, PRB, PRC, PRD, PRE, PR, Science, NatPhys, Nature, arxiv, NJP, JPBold, JPB, OE, OL, AO, Optica, SPP, SciPostPhys

limitations

So far, on top of broadband journals such as Nature or Science and the open-access arXiv repository, only a subset of physics journals is implemented.

Note that the papers are fetched from journals' search engine using web scrapping and some quick retro-engineering. If the search engine request protocol and/or the result page changes, the code won't work anymore. If this happens for an implemented journal, do not hesitate to let me know by opening an issue :)

If you wish to contribute, by writing the code in a more elegant way or implementing new journals, do not hesitate to contact me.

notes

The script is written for python 2.7. It requires the installation of additionnal packages:

  • requests: "Python HTTP for Humans." Used to send requests to the journal's search engine and retrieve information.

  • beautifulsoup4: "Beautiful Soup sits atop an HTML or XML parser, providing Pythonic idioms for iterating, searching, and modifying the parse tree." Used to parse the HTTP response.

For a simple install of this packages, I recommend using pip (https://pypi.python.org/pypi/pip/).

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

paper_retriever-0.1.0.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

paper_retriever-0.1.0-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file paper_retriever-0.1.0.tar.gz.

File metadata

  • Download URL: paper_retriever-0.1.0.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.12.3 Linux/6.11.0-17-generic

File hashes

Hashes for paper_retriever-0.1.0.tar.gz
Algorithm Hash digest
SHA256 830e64eab05beebbd1f7120bdfb40ace22118e8004288309bd9d14873460bd54
MD5 fe12c9a3254b9bc95c8cde5b06880a8f
BLAKE2b-256 f9f07936b587b278e04a76b8e2abca7ccf619f2dbff8e8f593af0991b7171969

See more details on using hashes here.

File details

Details for the file paper_retriever-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: paper_retriever-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.12.3 Linux/6.11.0-17-generic

File hashes

Hashes for paper_retriever-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ad7134db8d83ce73eab7ea84c9a2e1595f717c8122cc569a9fbc2b405a8d0b36
MD5 e699adcfab9a6a0049cdf318d9a82d6c
BLAKE2b-256 b9e9c9aff6c2afe78423f2602d9e7a65caec64eb7c884202e83122377e325063

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page