Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Preg_match/funkcja - file size czyli problemy dwa
cezary188
post 27.04.2012, 19:08:51
Post #1





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 31.07.2010

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


Sprawa teoretycznie prosta ale nie do końca. Potrzebuje wyciągnąć rozmiar pliku z dwóch serwisów sharingowych mianowicie rapidgator i turbobit. Konkretnie chodzi o forme zapisu dla rapid:349.59 MB oraz turbo: (401,38 Mb) . Tutaj przykladowe kody stron z ktorych probuje to wyciagnac:

  1. http://turbobit.net/65hewaap2cp7/Game.of.Thrones.S02E04.PL.HDTV.XViD-TR0D4T.avi.html

  1. http://rapidgator.net/file/8409415/The.Vampire.Diaries.S03E20.HDTV.XviD-2HD.avi.html


Niestety tresc strony sami musicie wycignac bo mnie nie przepuszcza jak probuje ja wstawic do postu

Próbowałem różnych zapytań preg_match ale albo uzyskiwałem szczątkowe liczby albo wyników było masa i nie miało to większego sensu.
Dodatkowo podziele się z wami funkcja która umożliwia uzyskanie tekstu pomiędzy wpisanymi wyrażeniami czyli np. jezeli mamy w kodzie
  1. yandex_metrika_callbacks
to wystarczy wskazac yandex_ oraz _callbacks aby uzyskać metrika. Problemem jest to że nie radzi sobie z białymi znakami czy nowymi liniami i nie odczytuje prawidłowo rozmiaru. Tak myślałem żeby dodać jej taka funkcje niestety nie mam za bardzo pomysłu jak.

Oto ta funkcja:


  1. class Handytools
  2. {
  3.  
  4. public static function retrieveMiddle($text,$start,$end)
  5. {
  6.  
  7.  
  8. $text = explode($start,$text);
  9.  
  10. if(!isset($text[1]))
  11. {
  12.  
  13. return false;
  14. }
  15.  
  16. $text = $text[1];
  17. $text = explode($end,$text);
  18.  
  19. if(!isset($text[0]))
  20. {
  21.  
  22. return false;
  23. }
  24.  
  25. return trim($text[0]);
  26.  
  27.  
  28.  
  29.  
  30. }
  31.  
  32. }



Czyli podsumowując. Potrzebuje wyciągnać rozmiary plików z przykładowych stron albo za pomocą preg_match albo za pomocą tej funkcji. Prosze pamietać że pliki mogą mieć od 1 mb do 2 gb. W zwiazku z tym że jest to zaledwie wycinek większej cześci nie moge za bardzo użyć innych metod bo wprowadzi to zamęt. Prosze o jakąs pomoc...
Go to the top of the page
+Quote Post
Sinevar
post 27.04.2012, 19:47:36
Post #2





Grupa: Zarejestrowani
Postów: 40
Pomógł: 13
Dołączył: 21.02.2008

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


Poniżej gotowe i przetestowane rozwiązanie, które wypluwa 349.59 na wyjście. Mam nadzieję, że podążając tym tropem bez problemu sklecisz sobie ten drugi skrypt.

  1. <?php
  2.  
  3. $content = file_get_contents('http://rapidgator.net/file/8409415/The.Vampire.Diaries.S03E20.HDTV.XviD-2HD.avi.html');
  4.  
  5. $pattern = '/File size:[\s]+<strong>([0-9\.]+)[\sA-Z]+<\/strong>/';
  6. preg_match($pattern, $content, $matches);
  7.  
  8. echo $matches[1];


Ten post edytował Sinevar 27.04.2012, 19:49:58
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 08:10