dedlfix: HTML parsen

Beitrag lesen

problematische Seite

Tach!

Wann immer irgendwas nicht will, erstmal var_dump() draufjagen, um Klarheit oder Erkenntnisse zu sammeln.

nutze dafür meist print_r(), dürfte aber keinen großen Unterschied machen?

print_r() ist für Arrays und Objekte gedacht und ergibt eine einfache, dafür aber etwas übersichtlichere Ausgabe. var_dump() hingegen ist genauer, das gibt zu jeder Variable den Typ und Zusatzinformationen, wie die Länge von Strings aus. Bei einem print_r() oder echo sieht man bei Whitespace nichts weiter, bei var_dump() hingegen Anführungszeichen um den String und dann auch den verbrauchten Platz zwischen ihnen, nebst der Länge in Bytes.

Bin jetzt aber nicht sicher wovon ein dump..

Von dem Ding, das du auszugeben gedenkst, und bei Objekt-Verkettungen die Kette hinauf zum Ursprung. Denn wenn beispielsweise irgendeine Eigenschaft nicht da ist, dann ist vielleicht am Elternteil was anders als erwartet.

Na ja gibt mir auf jeden Fall die Anzahl der nodes aus den h3 tags, beim gesamten quelltext, klar da sind whitespace drin und dein hinweis das bei nextSibling zu probieren, zeigt schon etwas:

Catchable fatal error: Object of class DOMText could not be converted to string

Dachte eigentlich so was würde mir der Parser abnehmen, tut er auch bestimmt nur wie?

Ganz genau kenne ich mich mit den DOM-Klassen auch nicht aus. Ich würde aber auf die Siche gehen, ob es irgendeine Option dafür gibt. Erste Station: Constructor → keine entsprechende Parameter. Irgendeine Methode zum Setzen von Optionen? Sieht nicht so aus. DOMDocument hat aber $preserveWhiteSpace. Das kann man mal probieren. Das Handbuch sagt aber nicht, wann das auf welchen Vorgang wirkt. Vielleicht beim Einlesen, vielleicht beim Speichern und erneutem Einlesen? Also auch mal Google dazu befragen. Weiterhin gibt es von DOMNode geerbt ein normalize(), dessen Beschreibung so klingt, als ob das was brauchbares tut. Außerdem gibts da noch was mit C14N im Namen (=Canonicalization), was auch so klingt, als ob es was damit zu tun haben könnte.

Das wären so die nächsten Schritte, die ich probieren würde, um die Textnodes wegzubekommen. Anderenfalls muss man sie eben beim Verarbeiten mit geeigneten if-else-Konstrukten überspringen.

dedlfix.

0 145

Werte aus Textdatei exhumieren

Linuchs
  • php
  • programmiertechnik
  1. 1
    Rolf B
    1. 0
      Gunnar Bittersmann
      1. 0
        dedlfix
      2. 0
        pl
        1. 0
          Gunnar Bittersmann
          1. 0
            pl
            1. 0
              Gunnar Bittersmann
              1. 0
                pl
                1. 2
                  ThomasM
                  1. 0
                    pl
                    1. 0
                      ThomasM
  2. -2
    Henry
    • php
    • programmiertechnik
    • regex
    1. 2
      dedlfix
      1. 0
        Henry
        • meinung
        • php
        • regex
        1. 0
          dedlfix
          1. 0
            Henry
        2. 2
          Gunnar Bittersmann
          1. 0
            Henry
            1. 0
              Gunnar Bittersmann
            2. 5
              dedlfix
              1. 0
                Gunnar Bittersmann
              2. 0
                Henry
                1. 1
                  dedlfix
                  1. 0
                    Henry
                    1. 1
                      Gunnar Bittersmann
                      1. 0
                        Henry
                        1. 0
                          Gunnar Bittersmann
                          1. 0
                            Henry
                            1. 4
                              Christian Kruse
                              1. 2
                                Mitleser
                              2. 0
                                Henry
                                1. 1
                                  Christian Kruse
                                  1. 0
                                    Henry
                                    1. 0
                                      Robert B.
                                    2. 0
                                      pl
                                    3. 0
                                      Auge
                                  2. 0

                                    HTML parsen

                                    Henry
                                    • html
                                    • php
                                    • regex
                                    1. 0
                                      dedlfix
                                      1. 0
                                        Henry
                                        1. 0
                                          dedlfix
                                          1. 0
                                            Henry
                                            1. 0
                                              Henry
                                              1. 0
                                                Henry
                                                1. 0
                                                  dedlfix
                                                  1. 0
                                                    Henry
                                                    1. 0
                                                      Auge
                                                    2. 0
                                                      dedlfix
                                                      1. 0
                                                        Rolf B
                                                      2. 0
                                                        Henry
                                                        1. 0
                                                          dedlfix
                                                          1. 0
                                                            Henry
                                                            1. 0
                                                              dedlfix
                                                              1. 0
                                                                JürgenB
                                2. 0
                                  pl
                                3. 1
                                  dedlfix
                            2. 0
                              Gunnar Bittersmann
                              • browser
                              • zu diesem forum
                              1. 0
                                Christian Kruse
                            3. 0
                              Gunnar Bittersmann
                              1. 1
                                JürgenB
                              2. 0
                                Gunnar Bittersmann
                                1. 1
                                  JürgenB
                                2. 0
                                  Henry
                                  1. 0
                                    Robert B.
                                  2. 1
                                    Gunnar Bittersmann
                        2. 0
                          Robert B.
                2. 1
                  Gleiter
                  1. 0
                    Henry
                    1. 0
                      Gleiter
                  2. 0
                    JürgenB
                    1. 0
                      dedlfix
                      1. 0
                        JürgenB
                        1. 0
                          pl
                          1. 0
                            JürgenB
                            1. 0
                              Mitleser
                              1. 0
                                JürgenB
                                1. 0
                                  Mitleser
                                  1. 0
                                    pl
                                    1. 0
                                      JürgenB
                                      1. 0
                                        Auge
                                        1. 0
                                          dedlfix
                                          1. 0
                                            Auge
                                            1. 0
                                              JürgenB
                                              1. 0
                                                dedlfix
                                                1. 2
                                                  Rolf B
                                                  • humor
                                                  • meinung
                                                  1. 0
                                                    pl
                                                    1. 1
                                                      Tabellenkalk
                                                      1. 0
                                                        pl
                                                      2. 0
                                                        Rolf B
                                                        • mathematik
                                                        • meinung
                                                      3. 0

                                                        lon/lat precision

                                                        pl
                                                        1. 0
                                                          JürgenB
                                                          1. 0
                                                            Auge
                                                            1. 0
                                                              JürgenB
                                                              1. 0
                                                                pl
                                                            2. 0
                                                              Matthias Apsel
                                                              1. 0
                                                                MudGuard
                                                          2. 0
                                                            pl
                                                            1. 0
                                                              JürgenB
                                                              1. 0
                                                                Tabellenkalk
                                                                1. 0
                                                                  JürgenB
                                                          3. 0
                                                            Gunnar Bittersmann
                                                            1. 0
                                                              JürgenB
                                                              1. 0
                                                                Robert B.
                                                                1. 0
                                                                  Tabellenkalk
                                                                  1. 0
                                                                    Gunnar Bittersmann
                                                                    1. 0
                                                                      Tabellenkalk
                                                                      1. 0
                                                                        Robert B.
                                                                        • humor
                                                                        • mac
                                                                        • meinung
                                                                    2. 0
                                                                      Regina Schaukrug
                                                                      1. 0
                                                                        Mitleser
                                                                2. 0
                                                                  JürgenB
                                                                  1. 0
                                                                    Robert B.
                                                                    1. 0
                                                                      JürgenB
                                                                3. 1
                                                                  Matthias Apsel
                                                                  1. 0
                                                                    Robert B.
                                                                    • humor
                                                                    • meinung
                                                                    • selfhtml-wiki
                                                                    1. 0
                                                                      Gunnar Bittersmann
                                                                      1. 0
                                                                        Matthias Apsel
                                                                        1. 0
                                                                          Gunnar Bittersmann
                                                                          1. 0
                                                                            Matthias Apsel
                                                                            1. 0
                                                                              Gunnar Bittersmann
                                                                          2. 0
                                                                            Rolf B
                                                                            1. 0
                                                                              Gunnar Bittersmann
                                                              2. 0
                                                                pl
                                                            2. 0
                                                              Matthias Apsel
                                                              • humor
                                                    2. 0
                                                      Rolf B
                                                      1. 0
                                                        pl
                                      2. 0
                                        pl
                                2. 0
                                  pl
                                3. 0
                                  dedlfix
                            2. 0
                              pl
                    2. 0
                      Gunnar Bittersmann
                    3. 0
                      Gleiter
                      1. 0
                        JürgenB
        3. 2
          Christian Kruse
        4. 0
          Robert B.
          1. 0
            Henry
    2. 0
      Robert B.
    3. 0
      t-rex rox
      1. 1
        Gunnar Bittersmann
  3. 2
    ThomasM
    1. 0
      Rolf B
      1. 0
        Gunnar Bittersmann
  4. 0
    JürgenB
    1. 0
      pl
      1. 0
        JürgenB
        1. 0
          pl