Obtenir l'API arXiv en Python

arXiv API

D'une manière ou d'une autre, twitter @ astro_ph_EP s'est arrêté, et j'aimerais voir un bot qui ne regarde que la catégorie spécifiée, alors j'ai jeté un coup d'œil à l'API arXiv.

Cependant, la description officielle (https://arxiv.org/help/api/user-manual) ne fonctionnait pas comme elle l'était ...

Correction officielle

L'erreur s'est produite ci-dessous.

data = urllib.urlopen(url).read()

Urllib est-il vieux? S'il s'agit d'une description officielle, cela fonctionnera si vous la réécrivez comme suit!

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()

Exemple d'acquisition

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()

Le nombre de soumissions ne correspond pas au nombre de nouvelles soumissions ... Les vacances aux États-Unis peuvent être évitées en utilisant holidays.US ().

Recommended Posts

Obtenir l'API arXiv en Python
Frappez l'API Sesami en Python
Accédez à l'API Web en Python
Accéder à l'API Twitter avec Python
Essayez d'utiliser l'API Wunderlist en Python
Essayez d'utiliser l'API Kraken avec Python
Tweet à l'aide de l'API Twitter en Python
API Evernote en Python
API C en Python 3
Essayez d'utiliser l'API BitFlyer Ligntning en Python
Conseils pour accéder à l'API ATND avec Python
Accédez à l'API Firebase Dynamic Links en Python
Essayez d'utiliser l'API DropBox Core avec Python
Hit API de Mastodon en Python
Trouver des erreurs en Python
API Blender Python dans Houdini (Python 3)
Appelez l'API avec python3.
Obtenir des éléments de liste en Python
Paramètres initiaux lors de l'utilisation de l'API foursquare avec python
Utiliser l'API de recherche de la Bibliothèque du Parlement national en Python
Obtenez votre fréquence cardiaque à partir de l'API fitbit en Python!
Python dans le navigateur: la recommandation de Brython
Enregistrez le fichier binaire en Python
[Python] Accédez à l'API Google Translation
Obtenez le chemin du bureau en Python
Obtenez le chemin du script en Python
Dans la commande python, python pointe vers python3.8
Implémenter le modèle Singleton en Python
Accédez à l'API Etherpad-lite avec Python
Créez Gmail en Python sans utiliser l'API
Utilisez l'API Flickr de Python
J'ai écrit la file d'attente en Python
Calculer le mois précédent en Python
Examiner la classe d'un objet avec python
Obtenez le chemin du bureau en Python
Implémentez rapidement l'API REST en Python
Obtenez le nom d'hôte en Python
La première étape de Python Matplotlib
J'ai écrit la pile en Python
Maîtriser le module lowref en Python
Un moyen simple d'accéder à l'API produit Amazon en Python
Accédez à l'API New Relic en Python pour obtenir l'état du serveur
Jouez en accédant à l'API Riot Games en Python Première moitié
Apprenez le modèle de conception "Prototype" avec Python
Apprenez le modèle de conception "Builder" avec Python
Fonctionnement de la souris à l'aide de l'API Windows en Python
Vérifiez le comportement du destroyer en Python
Apprenez le modèle de conception "Flyweight" en Python
Apprenez le modèle de conception "Observer" en Python
Apprenez le modèle de conception "Memento" avec Python
Apprenez le modèle de conception "Proxy" en Python
Ecrire le test dans la docstring python
Apprenez le modèle de conception "Commande" en Python
Prenez la somme logique de List en Python (fonction zip)
Afficher Python 3 dans le navigateur avec MAMP
Apprenez le modèle de conception "Visiteur" avec Python
Obtenez les données de l'API Google Fit en Python
Apprenez le modèle de conception "Bridge" avec Python