dodo-r
Goto Top

Export Userdaten aus Onlineportal (Quellcode) mittels Script für Serienbrieferstellung

Hallo!
In einem Verein verwenden wir ein Mitarbeiterportal, welches vom Admin nicht mehr gewartet wird, sondern nur mehr durch die Zuständigen Betreuer mit aktuellen Userdaten versorgt wird.
Leider ist keine Exportmöglichkeit der Userdaten im Portal vorhanden. Dabei sollen regelmäßig die Userdaten ausgelesen werden um für die Serienbrieferstellung verwendet werden zu können.
Ist es möglich nach der Anmeldung im Menüpunkt "Mitarbeiterliste" (mit folgendem Quellcode-Inhalt) die Userdaten (also Vorname, Nachname, Strasse, Hausnummer, PLZ, Ort) mit einem Script zu exportieren, ohne diese einzeln mühsam herauszukopieren bzw. abzugleichen?
(Im folgenden Beispiel sind nur zwei User vorhanden.)

Mitarbeiterliste Quellcode

<!DOCTYPE html>
<html>
<head>
    <title>Mitarbeiterportal</title>
    <link href="" rel="stylesheet" type="text/css" />  

    <script src="" type="text/javascript"></script>  


</head>
<body>
    <div id="page" class="page">  
        <div id="header">  
            <div id="logindisplay">  
                
    Hallo!
    [ <a href="/">Ausloggen</a> ]  

            </div>
            <div id="title">  
                <h1>Onlineportal</h1>
            </div>
            <div id="menucontainer">  

<ul id="nav">  
    <li><a href="/">Startseite</a></li>  
    <li><a href="/">Übersicht</a>  
        <ul>
            
            <li><a href="/">Link1</a> </li>  
        </ul>
    </li>

    <li><a href="/">Link2</a></li>  
    
    <li><a href="#">Persönliches</a>  
        <ul>
            <li><a href="/">Meine Daten</a></li>  
            
            <li><a href="/">News</a></li>  
            <li><a href="/">Termine</a></li>  
            <li><a href="/">Mitarbeiterliste</a></li>  
            
        </ul>
    </li>
    <li><a href="/">Link3</a></li>  
</ul>

            </div>
        </div>
        <div id="main">  

            
<h2>Liste aktiver Mitarbeiter</h2>
<center>
    <table id="usertable" class="tablenowrap">  
        <tr>
            <th>
                Name
            </th>
            <th>
                Adresse
            </th>
            <th>
                Telefon1
            </th>
            <th>
                Telefon2
            </th>
            <th>
                Email
            </th>
        </tr>
            <tr>
                    <td>
                        Mustermann
                        Anna
                    </td>
                <td>
                    Mustergasse 10, 1000
                    Musterort
                </td>
                <td>
                    01234567890
                </td>
                <td>
                    
                </td>
                <td>
                    <a href="mailto:mustermann.anna@example.org">mustermann.anna@example.org</a>  
                </td>
            </tr>
            <tr>
                    <td>
                        Mustermann
                        Ernst
                    </td>
                <td>
                    Musterweg 15, 1010
                    Musterstadt
                </td>
                <td>
                    09876543210
                </td>
                <td>
                    
                </td>
                <td>
                    <a href="mailto:mustermann.ernst@example.org">mustermann.ernst@example.org</a>  
                </td>
            </tr>
    </table>
</center>

        </div>
        <div id="footer">  
            Version 1.0.0 
            (c) by xy
    </div>
</body>
</html>

Danke im Voraus
dodo-r

Content-Key: 345454

Url: https://administrator.de/contentid/345454

Printed on: April 25, 2024 at 15:04 o'clock

Member: vossi31
vossi31 Aug 04, 2017 at 17:20:26 (UTC)
Goto Top
Moin,

wäre es nicht einfacher direkt auf die Datenbank zuzugreifen?
Wenn es MySQL ist wird in der Webspace-Verwaltung ja vermutlich phpmyadmin oder entsprechendes bereitstehen. Dann müssen natürlich ggf. noch Filter gesetzt werden um die "richtigen" Daten zu erhalten.

Henning
Member: dodo-r
dodo-r Aug 04, 2017 updated at 17:31:26 (UTC)
Goto Top
Natürlich wäre dies die einfachere und elegantere Lösung aber wie bereits geschrieben wir das Portal vom Admin nicht mehr gewartet da dieser kein Interesse mehr hat, wir haben weder Zugriff auf den Server noch auf die Datenbank des Portals.
Deswegen muss eine andere Lösung her...
In naher Zeit wird das Portal sowieso durch etwas anderes ersetzt. Deswegen benötigen wir eine "Übergangslösung".
Member: Kraemer
Kraemer Aug 04, 2017 at 19:55:15 (UTC)
Goto Top
Moin,

natürlich ist das möglich. Das ließe sich einmalig auch locker mit Excel, einem potenten Editor oder sonstwas lösen.

Gruß
Member: dodo-r
dodo-r Aug 05, 2017 at 17:34:56 (UTC)
Goto Top
Danke für die Antwort, inwiefern könnte ich das mit Excel oder sonstigen Script lösen?
Member: Kraemer
Kraemer Aug 07, 2017 at 07:54:38 (UTC)
Goto Top
Moin,

naja z.B. mit einer Regex

<tr>\n\s*<td>\n\s*(\w*)\n\s*(\w*)\n\s*<\/td>\n\s*<td>\n\s*([a-zA-Z0-9 ]*), (\d*)\n\s*(\w*)\n\s*<\/td>\n\s*<td>\n\s*([0-9\/-]*)\n\s*<\/td>\n\s*<td>\n\s*(\w*)\n\s*<\/td>\n\s*<td>\n\s*<a href="mailto:.*">(.*)<\/a>\n\s*<\/td>\n\s*<\/tr>/gm  
https://regex101.com/r/9asl2m/1

Gruß
Member: dodo-r
dodo-r Aug 07, 2017 at 08:04:32 (UTC)
Goto Top
Das bedeutet diesen Code müsste ich dann in Excel einfügen?
Leider hatte ich mit Regex bisher keinen Kontakt...
Member: Kraemer
Kraemer Aug 07, 2017 at 08:16:28 (UTC)
Goto Top
Zitat von @dodo-r:

Das bedeutet diesen Code müsste ich dann in Excel einfügen?
nope.
Beispiel:
Nimm Notepad++
Deinen Code öffnen
Suchen - Ersetzen
Suchen nach:
<tr>\r\n\s*<td>\r\n\s*(\w*)\r\n\s*(\w*)\r\n\s*<\/td>\r\n\s*<td>\r\n\s*([a-zA-Z0-9 ]*), (\d*)\r\n\s*(\w*)\r\n\s*<\/td>\r\n\s*<td>\r\n\s*([0-9\/-]*)\r\n\s*<\/td>\r\n\s*<td>\r\n\s*(\w*)\r\n\s*<\/td>\r\n\s*<td>\r\n\s*<a href="mailto:.*">(.*)<\/a>\r\n\s*<\/td>\r\n\s*<\/tr>  
Ersetzen durch:
$1;$2;$3;$4;$5;$6;$7;$8
Alle ersetzen
Nun noch den unnötigen Kram entfernen und fertig

Gruß