Flask 마이크로 프레임워크를 사용하여 Python으로 작성된 마이크로서비스입니다.
AWS의 Elastic Beanstalk 서비스에서 더 쉽게 작동할 수 있도록 코드가 재구성되었습니다.
이전 버전에 비해 변경된 사항은 다음과 같습니다.
"prevCodeOrganization"이라는 분기에서 이전 코드의 고정 버전을 찾을 수 있습니다.
매우 많은 사람들이 NASA가 설정한 이 API의 인스턴스를 사용합니다. 이 API의 매우 안정적인 버전이 필요한 경우 자신만의 API 버전을 구축하고 싶을 것입니다. 이 코드를 사용하면 가능합니다! 이 API가 반환하는 모든 정보는 실제로 오늘의 천문학 사진 웹사이트(APOD)에서 가져온 것입니다.
이 저장소를 보는 사람은 Astronomy Photo of the Day 웹사이트와 아무 관련이 없으므로 해당 콘텐츠와 직접 관련된 문제를 처리할 수 없습니다. 직접 문의해 주세요.
virtualenv
환경conda
환경git clone https://github.com/nasa/apod-api
cd
cd apod-api
lib
에 종속성을 설치합니다. pip install -r requirements.txt -t lib
lib
추가하고 서버를 실행하십시오. PYTHONPATH=./lib python application.py
virtualenv
환경git clone https://github.com/nasa/apod-api
cd
cd apod-api
env
만듭니다. python -m venv venv
. v env S cripts A ctivate
pip install -r requirements.txt
python application.py
conda
환경git clone https://github.com/nasa/apod-api
cd
cd apod-api
env
만듭니다. conda create --prefix ./env
conda activate ./env
pip install -r requirements.txt
python application.py
git clone https://github.com/nasa/apod-api.git
cd
cd apod-api
docker build . -t apod-api
docker run -p 5000:5000 apod-api
/<version>/apod
이 서비스에는 http GET 요청에 대한 매개변수로 2개의 선택적 필드를 사용하는 엔드포인트가 하나만 있습니다. JSON 사전이 명목상 반환됩니다.
api_key
| 데모: DEMO_KEY
| https://api.nasa.gov/#signUpdate
APOD 이미지의 날짜를 나타내는 YYYY-MM-DD 형식의 문자열입니다(예: 2014-11-03). 기본값은 오늘 날짜입니다. APOD 사진이 게시된 첫날인 1995-06-16 이후여야 합니다. 이 API를 통해 사용할 수 있는 내일의 이미지가 없습니다.concept_tags
나머지 응답과 함께 개념 태그를 반환해야 하는지 여부를 나타내는 부울 True|False
. 개념 태그는 반드시 설명에 포함될 필요는 없지만 설명 텍스트와 연관된 공통 검색 태그에서 파생됩니다. (단순한 텍스트 검색보다 낫습니다.) 기본값은 False입니다.hd
고해상도 이미지를 반환해야 하는지 여부를 나타내는 부울 True|False
매개 변수입니다. 이는 레거시 목적으로 존재하며 서비스에서 항상 무시되며 고해상도 URL은 관계없이 반환됩니다.count
100보다 크지 않은 양의 정수입니다. 이를 지정하면 무작위로 선택된 이미지 count
가 JSON 배열로 반환됩니다. date
또는 start_date
및 end_date
와 함께 사용할 수 없습니다.start_date
날짜 범위의 시작을 나타내는 YYYY-MM-DD 형식의 문자열입니다. start_date
부터 end_date
까지 범위의 모든 이미지는 JSON 배열로 반환됩니다. date
와 함께 사용할 수 없습니다.end_date
날짜 범위의 끝을 나타내는 YYYY-MM-DD 형식의 문자열입니다. start_date
end_date
없이 지정되면 end_date
현재 날짜로 기본 설정됩니다.thumbs
API가 비디오 파일에 대한 썸네일 이미지 URL을 반환해야 하는지 여부를 나타내는 부울 매개변수 True|False
. True
로 설정하면 API가 비디오 썸네일의 URL을 반환합니다. APOD가 비디오가 아닌 경우 이 매개변수는 무시됩니다.반환된 필드
resource
응답이 나타내는 image_set
또는 planet
설명하는 사전으로 구조화된 엔드포인트에 의해 완전히 결정됩니다.concept_tags
제공된 옵션의 부울 반영입니다. 기본값으로 인해 응답에 포함되었습니다.title
이미지의 제목입니다.date
이미지의 날짜입니다. 기본값으로 인해 응답에 포함되었습니다.url
오늘의 APOD 이미지 또는 비디오의 URL입니다.hdurl
해당 날짜의 고해상도 이미지에 대한 URL입니다. 'hd' 매개변수 설정과 관계없이 반환되지만 APOD에 원래 존재하지 않는 경우 응답에서 생략됩니다.media_type
반환된 미디어(데이터) 유형입니다. 콘텐츠에 따라 '이미지' 또는 '동영상'일 수 있습니다.explanation
이미지에 대해 제공된 텍스트 설명입니다.concepts
텍스트 설명 내에서 가장 관련성이 높은 개념입니다. concept_tags
True로 설정된 경우에만 제공됩니다.thumbnail_url
동영상 썸네일의 URL입니다.copyright
저작권 소유자의 이름입니다.service_version
사용된 서비스 버전입니다.예
localhost:5000/v1/apod ? api_key=DEMO_KEY & date=2014-10-01 & concept_tags=True
{
resource : {
image_set : "apod"
},
concept_tags : "True" ,
date : "2013-10-01" ,
title : "Filaments of the Vela Supernova Remnant" ,
url : "http://apod.nasa.gov/apod/image/1310/velafilaments_jadescope_960.jpg" ,
explanation : "The explosion is over but the consequences continue. About eleven
thousand years ago a star in the constellation of Vela could be seen to explode,
creating a strange point of light briefly visible to humans living near the
beginning of recorded history. The outer layers of the star crashed into the
interstellar medium, driving a shock wave that is still visible today. A roughly
spherical, expanding shock wave is visible in X-rays. The above image captures some
of that filamentary and gigantic shock in visible light. As gas flies away from the
detonated star, it decays and reacts with the interstellar medium, producing light
in many different colors and energy bands. Remaining at the center of the Vela
Supernova Remnant is a pulsar, a star as dense as nuclear matter that rotates
completely around more than ten times in a single second." ,
concepts : {
0 : "Astronomy" ,
1 : "Star" ,
2 : "Sun" ,
3 : "Milky Way" ,
4 : "Hubble Space Telescope" ,
5 : "Earth" ,
6 : "Nebula" ,
7 : "Interstellar medium"
}
}
https://api.nasa.gov/planetary/apod ? api_key=DEMO_KEY & count=5
[
{
"copyright" : "Panther Observatory" ,
"date" : "2006-04-15" ,
"explanation" : "In this stunning cosmic vista, galaxy M81 is on the left surrounded by blue spiral arms. On the right marked by massive gas and dust clouds, is M82. These two mammoth galaxies have been locked in gravitational combat for the past billion years. The gravity from each galaxy dramatically affects the other during each hundred million-year pass. Last go-round, M82's gravity likely raised density waves rippling around M81, resulting in the richness of M81's spiral arms. But M81 left M82 with violent star forming regions and colliding gas clouds so energetic the galaxy glows in X-rays. In a few billion years only one galaxy will remain." ,
"hdurl" : "https://apod.nasa.gov/apod/image/0604/M81_M82_schedler_c80.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Galaxy Wars: M81 versus M82" ,
"url" : "https://apod.nasa.gov/apod/image/0604/M81_M82_schedler_c25.jpg"
},
{
"date" : "2013-07-22" ,
"explanation" : "You are here. Everyone you've ever known is here. Every human who has ever lived -- is here. Pictured above is the Earth-Moon system as captured by the Cassini mission orbiting Saturn in the outer Solar System. Earth is the brighter and bluer of the two spots near the center, while the Moon is visible to its lower right. Images of Earth from Saturn were taken on Friday. Quickly released unprocessed images were released Saturday showing several streaks that are not stars but rather cosmic rays that struck the digital camera while it was taking the image. The above processed image was released earlier today. At nearly the same time, many humans on Earth were snapping their own pictures of Saturn. Note: Today's APOD has been updated." ,
"hdurl" : "https://apod.nasa.gov/apod/image/1307/earthmoon2_cassini_946.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Earth and Moon from Saturn" ,
"url" : "https://apod.nasa.gov/apod/image/1307/earthmoon2_cassini_960.jpg"
},
{
"copyright" : "Joe Orman" ,
"date" : "2000-04-06" ,
"explanation": "Rising before the Sun on February 2nd, astrophotographer Joe Orman anticipated this apparition of the bright morning star Venus near a lovely crescent Moon above a neighbor's house in suburban Phoenix, Arizona, USA. Fortunately, the alignment of bright planets and the Moon is one of the most inspiring sights in the night sky and one that is often easy to enjoy and share without any special equipment. Take tonight, for example. Those blessed with clear skies can simply step outside near sunset and view a young crescent Moon very near three bright planets in the west Jupiter, Mars, and Saturn. Jupiter will be the unmistakable brightest star near the Moon with a reddish Mars just to Jupiter's north and pale yellow Saturn directly above. Of course, these sky shows create an evocative picture but the planets and Moon just appear to be near each other -- they are actually only approximately lined up and lie in widely separated orbits. Unfortunately, next month's highly publicized alignment of planets on May 5th will be lost from view in the Sun's glare but such planetary alignments occur repeatedly and pose no danger to planet Earth.",
"hdurl" : "https://apod.nasa.gov/apod/image/0004/vm_orman_big.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Venus, Moon, and Neighbors" ,
"url" : "https://apod.nasa.gov/apod/image/0004/vm_orman.jpg"
},
{
"date" : "2014-07-12" ,
"explanation": "A new star, likely the brightest supernova in recorded human history, lit up planet Earth's sky in the year 1006 AD. The expanding debris cloud from the stellar explosion, found in the southerly constellation of Lupus, still puts on a cosmic light show across the electromagnetic spectrum. In fact, this composite view includes X-ray data in blue from the Chandra Observatory, optical data in yellowish hues, and radio image data in red. Now known as the SN 1006 supernova remnant, the debris cloud appears to be about 60 light-years across and is understood to represent the remains of a white dwarf star. Part of a binary star system, the compact white dwarf gradually captured material from its companion star. The buildup in mass finally triggered a thermonuclear explosion that destroyed the dwarf star. Because the distance to the supernova remnant is about 7,000 light-years, that explosion actually happened 7,000 years before the light reached Earth in 1006. Shockwaves in the remnant accelerate particles to extreme energies and are thought to be a source of the mysterious cosmic rays.",
"hdurl" : "https://apod.nasa.gov/apod/image/1407/sn1006c.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "SN 1006 Supernova Remnant" ,
"url" : "https://apod.nasa.gov/apod/image/1407/sn1006c_c800.jpg"
},
{
"date" : "1997-01-21" ,
"explanation": "In Jules Verne's science fiction classic A Journey to the Center of the Earth, Professor Hardwigg and his fellow explorers encounter many strange and exciting wonders. What wonders lie at the center of our Galaxy? Astronomers now know of some of the bizarre objects which exist there, like vast dust clouds,r bright young stars, swirling rings of gas, and possibly even a large black hole. Much of the Galactic center region is shielded from our view in visible light by the intervening dust and gas. But it can be explored using other forms of electromagnetic radiation, like radio, infrared, X-rays, and gamma rays. This beautiful high resolution image of the Galactic center region in infrared light was made by the SPIRIT III telescope onboard the Midcourse Space Experiment. The center itself appears as a bright spot near the middle of the roughly 1x3 degree field of view, the plane of the Galaxy is vertical, and the north galactic pole is towards the right. The picture is in false color - starlight appears blue while dust is greenish grey, tending to red in the cooler areas.",
"hdurl" : "https://apod.nasa.gov/apod/image/9701/galcen_msx_big.gif" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Journey to the Center of the Galaxy rn Credit:" ,
"url" : "https://apod.nasa.gov/apod/image/9701/galcen_msx.jpg"
}
]
https://api.nasa.gov/planetary/apod ? api_key=DEMO_KEY & start_date=2017-07-08 & end_date=2017-07-10
[
{
"copyright" : "T. Rector" ,
"date" : "2017-07-08" ,
"explanation" : "Similar in size to large, bright spiral galaxies in our neighborhood, IC 342 is a mere 10 million light-years distant in the long-necked, northern constellation Camelopardalis. A sprawling island universe, IC 342 would otherwise be a prominent galaxy in our night sky, but it is hidden from clear view and only glimpsed through the veil of stars, gas and dust clouds along the plane of our own Milky Way galaxy. Even though IC 342's light is dimmed by intervening cosmic clouds, this sharp telescopic image traces the galaxy's own obscuring dust, blue star clusters, and glowing pink star forming regions along spiral arms that wind far from the galaxy's core. IC 342 may have undergone a recent burst of star formation activity and is close enough to have gravitationally influenced the evolution of the local group of galaxies and the Milky Way." ,
"hdurl" : "https://apod.nasa.gov/apod/image/1707/ic342_rector2048.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Hidden Galaxy IC 342" ,
"url" : "https://apod.nasa.gov/apod/image/1707/ic342_rector1024s.jpg"
},
{
"date" : "2017-07-09" ,
"explanation" : "Can you find your favorite country or city? Surprisingly, on this world-wide nightscape, city lights make this task quite possible. Human-made lights highlight particularly developed or populated areas of the Earth's surface, including the seaboards of Europe, the eastern United States, and Japan. Many large cities are located near rivers or oceans so that they can exchange goods cheaply by boat. Particularly dark areas include the central parts of South America, Africa, Asia, and Australia. The featured composite was created from images that were collected during cloud-free periods in April and October 2012 by the Suomi-NPP satellite, from a polar orbit about 824 kilometers above the surface, using its Visible Infrared Imaging Radiometer Suite (VIIRS)." ,
"hdurl" : "https://apod.nasa.gov/apod/image/1707/EarthAtNight_SuomiNPP_3600.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Earth at Night" ,
"url" : "https://apod.nasa.gov/apod/image/1707/EarthAtNight_SuomiNPP_1080.jpg"
},
{
"date" : "2017-07-10" ,
"explanation" : "What's happening around the center of this spiral galaxy? Seen in total, NGC 1512 appears to be a barred spiral galaxy -- a type of spiral that has a straight bar of stars across its center. This bar crosses an outer ring, though, a ring not seen as it surrounds the pictured region. Featured in this Hubble Space Telescope image is an inner ring -- one that itself surrounds the nucleus of the spiral. The two rings are connected not only by a bar of bright stars but by dark lanes of dust. Inside of this inner ring, dust continues to spiral right into the very center -- possibly the location of a large black hole. The rings are bright with newly formed stars which may have been triggered by the collision of NGC 1512 with its galactic neighbor, NGC 1510." ,
"hdurl" : "https://apod.nasa.gov/apod/image/1707/NGC1512_Schmidt_1342.jpg" ,
"media_type" : "image" ,
"service_version" : "v1" ,
"title" : "Spiral Galaxy NGC 1512: The Nuclear Ring" ,
"url" : "https://apod.nasa.gov/apod/image/1707/NGC1512_Schmidt_960.jpg"
}
]
이미지를 다시 표시하는 경우 저작권이 있는지 확인하는 것이 좋습니다. 저작권 반환 필드가 없는 항목은 일반적으로 NASA 및 공개 도메인에 속합니다. 자세한 내용은 메인 천문학 사진 오늘의 사이트의 "이미지 권한 정보" 섹션을 참조하세요.
APOD Parser는 API 자체의 일부가 아닙니다. 오히려 추가 코드를 직접 작성하지 않고도 Python을 사용하여 APOD API에 빠르게 액세스하는 데 사용됩니다. apod_parser 폴더에 있습니다.
먼저 apod_object_parser.py
파일을 가져옵니다.
이제 get_data
함수를 사용하고 API 키를 유일한 인수로 전달하세요. 여기에서 API 키를 얻을 수 있습니다
response = apod_object_parser . get_data ( < your_api_key > )
-> apod_object_parser.get_date(response)
-> apod_object_parser.get_explaination(response)
-> apod_object_parser.get_hdurl(response)
-> apod_object_parser.get_media_type(response)
-> apod_object_parser.get_service_version(response)
-> apod_object_parser.get_title(response)
-> apod_object_parser.get_url(response)
전체 문서 및 추가 기능을 보려면 여기를 클릭하여 apod 파서의 추가 정보를 참조하세요.
이 API의 배포 버전은 eb
분기를 기반으로 합니다. 이전에 배포된 버전은 eb_previous
분기에 있습니다. master
브랜치는 대부분의 끌어오기 요청이 들어오는 곳이므로 개발용으로 사용됩니다.
본 API는 서비스를 이용하는 사람이 많기 때문에 Elastic Beanstalk를 사용하여 AWS에 배포됩니다. 그러나 혼자서 사용할 계획이라면 단일 마이크로 EC2 또는 기타 소형 클라우드 컴퓨팅 시스템에 설치할 수 있을 만큼 작습니다.
이 저장소가 유용하다고 생각되면 별표를 표시하세요. 이 저장소에 대한 피드백을 제공하려면 github 문제 추적기를 사용하세요.
우리는 대중의 풀 요청을 받아들입니다. 답변이 느릴 수 있는 점 양해 부탁드립니다. 인내심을 가지십시오.
또한 이 저장소에 대한 권한을 가진 사람은 APOD 웹사이트 자체의 문제를 디버깅할 수 있는 사람이 아닙니다 . 기여하고 싶다면 지금 당장 테스트에 좀 주의를 기울여 보세요.