Skocz do zawartości

xPath vs wyrażenie regularne - Pobieranie zawartości jednej kolumny z tabeli


Rekomendowane odpowiedzi

Witajcie,

mam mały problem i myślę, że ktoś z was jest w stanie pomóc.

Mianowicie potrzebuję pobierać zawartość jednej wybranej kolumny z tabeli, która łącznie ma 10 kolumn. Do tego ma 50 wierszy i podzielona na 1000 paginacji...

Łączna ilość wierszy to 50,000 i nie uśmiecha mi się tego robić ręcznie, tj. kopiuj, wklej, usuń niepotrzebne.

W zamian mogę zoptymalizować komuś stronę za free :)

Pozdrawiam

Odnośnik do komentarza

Zarejestruj się za darmo i naucz się zarabiać online!

  • Dostęp do darmowych poradników pokazujących krok po kroku jak zarabiać w Internecie
  • Sposoby zarabiania niepublikowane nigdzie indziej
  • Aktywna społeczność, która pomoże Ci rozwiązać problemy i doradzi
  • Profesjonalne treści na temat SEO, social media, afiliacji, kryptowalut, sztucznej inteligencji i wiele więcej!

Bez znaczenia w jakiej formie to będę miał bo na swoje potrzeby i tak będę przerabiał w sposób już zautomatyzowany, że tak nazwę to będzie akcja jednorazowa.

Jeśli nikt nie jest w stanie to się pomęczę z programami do makro, zawsze to szybciej będzie :P

@coffee super pomysł ale wiesz co? Nic mi to nie mówi, cóż gdybym wiedział jak to wykorzystać to nie powstałby ten temat.

Odnośnik do komentarza
26 minut temu, Harry napisał:

Bez znaczenia w jakiej formie to będę miał bo na swoje potrzeby i tak będę przerabiał w sposób już zautomatyzowany, że tak nazwę to będzie akcja jednorazowa.

Jeśli nikt nie jest w stanie to się pomęczę z programami do makro, zawsze to szybciej będzie :P

@coffee super pomysł ale wiesz co? Nic mi to nie mówi, cóż gdybym wiedział jak to wykorzystać to nie powstałby ten temat.

Żebyś mógł to wykorzystywać w różnych projektach to musiałbyś albo zrozumieć zasadę budowania wyrażeń regularnych, lub skorzystać z narzędzi, które automatycznie takie tworzą (choć oczywiście nie zawsze działa to tak jak powinno; zależy od stopnia zaawansowania struktury dokumentu).

Naturalniejszym sposobem na pobieranie takich danych jest skorzystanie z xPath, bo posługujesz się strukturą DOM, a nie dopasowywaniem tekstu do wzorca (o ile struktura jest jednolita dla całej tabeli).

Przykłady użycia xPath

Powiedzmy, że z takiej tabeli chciałbym wyciągnąć tylko środkowe wartości:

c5c4caf2b2.png

Kod html takiej tabeli to:

<table style="width:60%">
  <tr>
    <td>Jill</td>
    <td>Smith</td>		
    <td>50</td>
  </tr>
  <tr>
    <td>Eve</td>
    <td>Jackson</td>		
    <td>94</td>
  </tr>
  <tr>
    <td>John</td>
    <td>Doe</td>		
    <td>80</td>
  </tr>
  <tr>
    <td>Altay</td>
    <td>Doe</td>		
    <td>30</td>
  </tr>
  <tr>
    <td>Nick</td>
    <td>Smith</td>		
    <td>34</td>
  </tr>
  <tr>
    <td>Rob</td>
    <td>Milbern</td>		
    <td>45</td>
  </tr>
  <tr>
    <td>Scoot</td>
    <td>Sam</td>		
    <td>65</td>
  </tr>
</table>

Więc tworzę zapytanie xPath:

//tr/td[2]/text()

I w rezultacie otrzymuję:

ae989c6dbc.png

Kiedyś stworzyłem taki prosty programik w którym podawało się linki a następnie wyrażenie xPath. Program wyodrębniał dane z podanych stron na podstawie owego wyrażenia:

b4849c827b.gif

Programu niestety już nie posiadam.

  • Super 1
Odnośnik do komentarza
  • 2 tygodnie później...

@Ciamciaj niestety nie miałem okazji sprawdzić. To nie jest sprawa nagląca także mogę sobie odpuścić jeszcze na jakiś czas :) Od razu dam znać w tym temacie jeżeli uda mi się ogarnąć. Mam nadzieję, że tutorial od @coffee pomoże bo wygląda obiecująco :) Dzięki za zainteresowanie!

Odnośnik do komentarza
  • mysc zmienił(a) tytuł na xPath vs wyrażenie regularne - Pobieranie zawartości jednej kolumny z tabeli

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Ta strona korzysta z ciasteczek, aby świadczyć usługi na najwyższym poziomie. Dalsze korzystanie z witryny oznacza zgodę na ich wykorzystanie. Polityka prywatności .