Licznik odkrytych planet dla programistów
Za pomocą prostego skryptu PHP, czy Pythona możemy pobrać z planetquest dane o ilości odkrytych planet pozasłonecznych
NASA na swojej stronie planetquest.jpl.nasa.gov oferuje widżety desktopowe wyświetlające licznik odkrytych pozasłonecznych planet. W prosty sposób możemy wykorzystać źródło danych widżetu by wyświetlić te same dane na własnej stronie za pomocą PHP, czy Pythona. Widżet pobiera dane z dokumentu XML: planetstats.cfm, który możemy pobrać i sparsować wydobywając potrzebne dane.PHP
Poniżej prosty przykład jak pobrać i sparsować dokument za pomocą SimpleXML (PHP5): gdzie:- planetcount: ilość odkrytych planet
- starcount: ilość gwiazd z planetami
- mpscount: ilość układów z wieloma planetami
- earthcount: ilość planet typu ziemskiego
- lpurl: adres URL do profilu "ostatnio odkrytej" planety
- lpname: nazwa planety
- lpdistance: odległość od Ziemi w latach świetlnych
- lpsize: rozmiar planety
- lpsizecomp: planeta Układu Słonecznego względem którego podany jest rozmiar
- lporbit: dni na okrążenie gwiazdy
- lpimagethm: miniaturka (nazwa pliku, pełen URL to http://planetquest.jpl.nasa.gov/atlas/images/NAZWA_PLIKU)
Python
Poniżej kod dla Pythona z rozdzielonym pobieraniem pliku i jego parsowaniem: Teraz gdybyśmy chcieli dodać keszowanie pobranego dokumentu przez 24 godziny to można zrobić to tak: Gdzie najważniejszy jest warunek:if isfile('planets.xml') and getmtime('planets.xml') > time()-86400:
Sprawdzamy czy plik istnieje i czy jego data modyfikacji (wyrażona znacznikiem czasu) nie jest starsza niż 24. Jeżeli warunki te są spełnione - używamy danych w pliku (kesz), a jeżeli nie to pobieramy nowe dane i zapisujemy do pliku.
RkBlog