• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Przeszukiwanie stron html w poszukiwaniu treści. Czym? PHP

VPS Starter Arubacloud
0 głosów
1,274 wizyt
pytanie zadane 20 lipca 2017 w PHP przez Else Stary wyjadacz (12,260 p.)
Hej! Poszukuję skryptu/ funkcji/ biblioteki PHP (jeżeli nie php to js), która przyśpiesza przeszukiwanie i wybieranie treści w plikach html. Zacząłem robić to od zera, ale robienie regexa do każdego znacznika, wydaje się być mało atrakcyjnym rozwiązaniem. Chodzi mi np. o coś co pomoże w takich operacjach jak:

-szukanie elementów na stronie,

-wyciąganie treści konkretnych znaczników np. całego body

-wyciąganie poszczególnych wartości atrybutów itp.

Jeżeli widzieliście coś takiego to byłbym bardzo wdzięczny, jeżeli pomożecie.

4 odpowiedzi

+1 głos
odpowiedź 21 lipca 2017 przez Jedras Maniak (54,860 p.)
Możesz skorzystać z parsera w PHP http://php.net/manual/en/book.dom.php

Ewentualnie pozostaje poszukać czegoś popularnego na gicie, np. https://github.com/paquettg/php-html-parser
0 głosów
odpowiedź 20 lipca 2017 przez CenterPL Pasjonat (19,070 p.)
Do tego co napisałeś to w sumie natywny javascript - getElementById, getElementByTagName itd. Metoda search() do wyszukiwania stringa. Chyba się nada.
komentarz 20 lipca 2017 przez Else Stary wyjadacz (12,260 p.)
A zadziała do zewnętrznych zasobów jak strona wrzucona na serwer?
komentarz 20 lipca 2017 przez CenterPL Pasjonat (19,070 p.)
A, chcesz pobierać z zewnętrznej strony. No to w PHP Curl, ale nie unikniesz regex'ów.

https://stackoverflow.com/questions/5045598/getting-elements-of-a-div-from-another-page-php

Tutaj jest o jakiejś bibliotece PHP DomDocument, ale nie znam jej więc nie daje gwarancji.
komentarz 21 lipca 2017 przez Comandeer Guru (605,680 p.)
0 głosów
odpowiedź 21 lipca 2017 przez Comandeer Guru (605,680 p.)

DOM + XPath

Chociaż osobiście bym odpalił Chrome'a w trybie headless i operował na nim przez Node.js.

0 głosów
odpowiedź 21 lipca 2017 przez Alwox Gaduła (4,840 p.)

O ile dobrze zrozumiałem Twoje potrzeby to lepszego (przynajmniej tak prostego do użycia) narzędzia niż konsola Chroma nie znajdziesz. Wystarczy zaznajomić się z nią nieco i ogarnąć parę prostych (np wspomnianych już tu) metod JavaScriptu. Dla przykładu jeśli chcesz dostać wszystkie divy ze strony otwierasz narzędzia, wchodzisz w konsolę i wpisujesz 

document.getElementsByTagName("div")

w zasadzie możliwości są nieograniczone tylko przy bardziej skomplikowanych zapytaniach będzie trzeba znać trochę więcej JSa ale od czego są dokumentacje.

komentarz 21 lipca 2017 przez intermok Nowicjusz (240 p.)
Właście taki pomysł był moim pierwszym tropem.

Podobne pytania

0 głosów
1 odpowiedź 191 wizyt
pytanie zadane 16 lutego 2018 w JavaScript przez Alan1221 Użytkownik (950 p.)
0 głosów
2 odpowiedzi 351 wizyt
pytanie zadane 15 marca 2020 w PHP przez szaman219 Nowicjusz (140 p.)
+1 głos
3 odpowiedzi 345 wizyt
pytanie zadane 24 kwietnia 2016 w PHP przez xandros Nałogowiec (29,450 p.)

93,078 zapytań

142,041 odpowiedzi

321,445 komentarzy

62,423 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...