Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [klasa] movieDownloader, Na chwilę obecną: Anyfiles.pl, Maxvideo.pl, Sprocked
b4x
post 27.05.2013, 16:18:44
Post #1





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

Ostrzeżenie: (0%)
-----


Witam.

Udostępniam movieDownloader - wyciąganie linków z serwisów hostujących filmy.

Na chwilę obecną zwraca tylko linki - będę troszkę rozwijał o np. zapis (pobieranie na HDD)

Obsługiwane serwisy: Anyfiles.pl, * Maxvideo.pl, Sprocked + niedługo kolejne.

* Wymaga konta premium.

Dostępny na Githubi'e pod adresem: https://github.com/nSolutionsPL/movieDownloader


--------------------
Go to the top of the page
+Quote Post
Crozin
post 27.05.2013, 16:43:59
Post #2





Grupa: Zarejestrowani
Postów: 6 469
Pomógł: 1305
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


1. Brak wsparcia dla Composera.
2. Niby wykorzystujesz przestrzenie nazw, a mimo to korzystasz ze Starej_Konwencji_Nazewnicta.
3. Ten "prosty" autoloader jest zbędny.
4. Interfejs Downloadera jest źle napisany. W żaden sposób nie umożliwia przekazania linku do filmu, który chcemy pobrać.

Sam interfejs dla użytkownika też do najwygodniejszych nie należy. Trzeba ręcznie na podstawie filmu określić z czego skorzystać, a to mogłoby być zrobione automatycznie. Wystarczyłaby jakiś obiekt skupiający wszystkie Downloadery, gdzie każdy z nich implementując interfejs Downloader ma metodę supports($url) zwracająca TRUE/FALSE. W użyciu wyglądałoby to już całkiem sensownie:
  1. $downloader = ...;
  2.  
  3. echo $downloader->get('http://sprocked.com/movie/show/ORGa')->getLink();
  4. echo $downloader->get('http://video.anyfiles.pl/videos.jsp?id=32364')->getLink();


Wnętrze metody get():
  1. public function get($url) {
  2. $urlParts = parse_url($url);
  3.  
  4. // rzuc wyjatkiem gdy $urlParts nie jest poprawne
  5.  
  6. foreach ($this->downloaders as $downloader) {
  7. if ($downloader->supports($urlParts)) { // albo samo $urlParts['host']
  8. return $downloader->get($urlParts);
  9. }
  10. }
  11.  
  12. // rzuc wyjatkiem, nie ma czego zwrocic
  13. }


Ten post edytował Crozin 27.05.2013, 17:26:59
Go to the top of the page
+Quote Post
b4x
post 27.05.2013, 17:14:19
Post #3





Grupa: Zarejestrowani
Postów: 658
Pomógł: 95
Dołączył: 20.12.2005
Skąd: N54,35° E18,63° (Gdańsk)

Ostrzeżenie: (0%)
-----


@Crozin - dzięki za krytykę :-)

Faktycznie troszkę pomieszałem, ale później trochę zmienie...


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.06.2018 - 00:23