diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2024-08-20 20:44:34 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2024-08-20 20:44:34 -0300 |
commit | e851401694daacaf1aba2c87ed557e5dbf00af02 (patch) | |
tree | d772b15f3a5ba9e015936f7162f448a7208a4001 /doi2bib | |
parent | d6a4d78d31ffa57e00a7d5b0a87baa38156cee06 (diff) | |
download | scripts-e851401694daacaf1aba2c87ed557e5dbf00af02.tar.gz scripts-e851401694daacaf1aba2c87ed557e5dbf00af02.tar.bz2 |
Move scripts to other repositories
Diffstat (limited to 'doi2bib')
-rwxr-xr-x | doi2bib | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/doi2bib b/doi2bib deleted file mode 100755 index b669737..0000000 --- a/doi2bib +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/python3 -# Adapted from https://scipython.com/blog/doi-to-bibtex/ - -import os -import sys -import pycurl -from io import BytesIO -#import urllib.request -#from urllib.error import HTTPError - -BASE_URL = 'http://dx.doi.org/' - -try: - doi = sys.argv[1] -except IndexError: - print('usage: {} <doi>'.format(os.path.basename(sys.argv[0]))) - sys.exit(1) - -url = BASE_URL + doi - -# Urllib version -#req = urllib.request.Request(url) -#req.set_proxy('socks5://localhost:9050', 'socks') -#req.add_header('Accept', 'application/x-bibtex') - -# PyCurl version with Tor support -# See http://pycurl.io/docs/latest/quickstart.html -buffer = BytesIO() -req = pycurl.Curl() -req.setopt(req.URL, url) -req.setopt(req.HTTPHEADER, ('Accept: application/x-bibtex',)) -req.setopt(req.FOLLOWLOCATION, True) -req.setopt(req.WRITEDATA, buffer) -req.setopt(req.PROXY, 'socks5://localhost:9050') - -try: - #with urllib.request.urlopen(req) as f: - # bibtex = f.read().decode() - #print(bibtex) - - req.perform() - req.close() - body = buffer.getvalue() - - # Body is a byte string. - # We have to know the encoding in order to print it to a text file - # such as standard output. - print(body.decode('iso-8859-1')) -except HTTPError as e: - if e.code == 404: - print('DOI not found.') - else: - print('Service unavailable.') - sys.exit(1) |