![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Witam,
przedstawiam do oceny parser HTML mojego autorstwa. Plik do pobrania: http://www.filedropper.com/htmlparserclassphp Opis: Zasada działania jest prosta, wystarczy zaincludować plik z klasą, która znajduje się w powyższym pliku. Następnie utworzyć nowy obiekt, np.
Dostępne są 3 metody pobierania HTML, który będziemy parsować: - z pliku
- ze stringa
- z URL
Następnie wywołanie parsera:
Jako wynik zmienna $resource będzie przechowywać tablicę obiektów DIV-ów znalezionych w parsowanym źródle, bądź jeden obiekt, jeśli w metodzie find jako drugi argument podamy liczbę (wtedy zwróci n-ty DIV z parsowanego źródła). Odczyt informacji: Odczyt jest bardzo prosty, każdy wynik zawiera obiekty text oraz html, ponadto jeśli DIV posiada atrybuty, np. class bądź id zostaną one zwrócone również w postaci obiektów. Przykład:
To tak po krótce tytułem wstępu. Jednak parser wymaga optymalizacji, ponieważ czas parsowania średniej wielkości źródła jest dosyć długi. Proszę o oceny, a także o wskazanie dalszej drogi rozwoju owego parsera (zastanawiałem się jeszcze nad wyszukiwaniem elementów HTML np. po class, bądź po ID, jednak w tym momencie nie mam jeszcze pomysłu jak to zrealizować, bo już teraz parser w obecnej formie jest dość "ciężki"). Pozdrawiam i dzięki za ewentualne sugestie. EDIT: Zapomniałem dodać, możemy również szukać dzieci naszych wynikowych obiektów, np.
Możliwość zagnieżdżania jest nieograniczona. Ten post edytował b4rt3kk 4.10.2013, 13:31:07 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 890 Pomógł: 339 Dołączył: 14.12.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Ja mam tylko jedno pytanie. Czemu miałbym używać Twojej, jak to sam określiłeś - zasobożernego parsera (zresztą nie dziwię się skoro najróżniejszych preg'ów w kodzie jak mrówek), zamiast powszechnie używanej i dużo bardziej rozbudowanej klasy DOMDocument?
Ten post edytował sowiq 4.10.2013, 13:35:09 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Ja mam tylko jedno pytanie. Czemu miałbym używać Twojej, jak to sam określiłeś - zasobożernego parsera (zresztą nie dziwię się skoro najróżniejszych preg'ów w kodzie jak mrówek), zamiast powszechnie używanej i dużo bardziej rozbudowanej klasy DOMDocument? Tzn. jest to dopiero wczesna wersja, nie zachęcam nikogo do użytkowania, a proszę jedynie o wykazanie błędów, ew. drogi rozbudowy / rozwoju. Sam parser powstał na mój własny użytek, nie mam zamiaru go nigdzie udostępniać (póki co), jakkolwiek jeśli ktoś jednak zechce skorzystać, to proszę bardzo, nie mam nic przeciwko. Ani nie pobieram opłat, ani nie zbieram dotacji, także wolny wybór użytkownika. A temat się tyczy jedynie oceny. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 5.10.2025 - 16:02 |