arXiv API
Irgendwie hat twitter @ astro_ph_EP aufgehört, und ich würde gerne einen Bot sehen, der nur die angegebene Kategorie betrachtet, also habe ich mir die arXiv-API angesehen.
Die offizielle Beschreibung (https://arxiv.org/help/api/user-manual) funktionierte jedoch nicht so wie sie war ...
Der Fehler ist unten aufgetreten.
data = urllib.urlopen(url).read()
Ist Urllib alt? Wenn es sich um eine offizielle Beschreibung handelt, funktioniert sie, wenn Sie sie wie folgt umschreiben!
import urllib.request
url = 'http://export.arxiv.org/api/query?search_query=all:electron&start=0&max_results=1'
data = urllib.request.urlopen(url).read()
import urllib.request
import datetime as dt
import re
def main():
basedate = dt.date.today()+dt.timedelta(days=-1)
previousdate = basedate +dt.timedelta(days=-1)
url_q = 'http://export.arxiv.org/api/query?search_query=submittedDate:['+previousdate.strftime('%Y%m%d')+'1400+TO+'+basedate.strftime('%Y%m%d')+'1400]+AND+(cat:astro-ph.EP)&start=0&sortBy=submittedDate&sortOrder=ascending'
data = urllib.request.urlopen(url_q).read().decode('utf-8')
#
parse = lambda a,b: re.findall("<" + b + ">([\s\S]*?)<\/" + b + ">", a)
#
entries = parse(str(data), "entry")
for entry in entries:
url = parse(entry, "id")[0]
title = parse(entry, "title")[0]
author = ', '.join(parse(entry, "name") )
summary = parse(entry, "summary")[0]
print( '%s\n%s\n%s\n%s' % (url, title, author, summary) )
if __name__ == '__main__':
main()
Die Anzahl der Einreichungen stimmt nicht mit der Anzahl der neuen Einreichungen überein ... US-Feiertage können durch Verwendung von feiertagen vermieden werden.US ().
Recommended Posts