Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Programm erstellen für Dateidownload von geschützter Webseite und modifiziert in lokale SQL-DB schreiben

Frage Entwicklung Datenbanken

Mitglied: chef1568

chef1568 (Level 1) - Jetzt verbinden

31.01.2013, aktualisiert 13:06 Uhr, 2782 Aufrufe, 8 Kommentare

Hallo,

Ich seh gerade den Wald vor lauter Bäumen nicht^^

Ziel ist über eine CSV-Datei aus dem Internet Daten in einer lokalen SQL-Datenbank upzudaten.
Dazu sind folgende Arbeitsschritte erforderlich:
1. Anmelden an einer Webseite (Downloadbereich nur für angemeldete Benutzer verfügbar)
2. Starte Erstellung der CSV-Datei (mittels php-script auf der Homepage)
3. Diese Datei (variabler Dateiname) downloaden
4. Datei öffnen und ausgewählte Spalten in eine SQL-Datenbank schreiben

wie kann ich das am saubersten umsetzen?
- batch
- autoit
- VBS
- ...


vielen Dank schonmal für die Hilfe
Mitglied: Maveric
31.01.2013 um 13:19 Uhr

Das ist für den Download super :=), wäre auch meine Empfehlung.



Des Wieteren -------
Das Schreiben in deine MySQL DB machst du per Perl Skript.
Dabei iterierst du einfach durch die CSV und wendest auf
jede Zeile in der CSV einen Regex Ausdruck an. Dieser ist so
aufgebaut das er dir für jede Spalte Gruppen zurück gibt. Diese
kannst du abgreifen und über ein MySQL Statement in Perl direkt in
die DB schreiben.

Ich empfehle dir dazu noch, wenn deine
CSV mehr als 1000 Einträge hast, einen Batch Insert in dem Skript
zu bauen. Mit anderen Worten... Du baust ein Insert das so aussieht:

INSERT INTO table_name
VALUES (value1, value2, value3,...),(value1, value2, value3,...),(value1, value2, value3,...),(value1, value2, value3,...)

Gute Werte für so ein Insert sind bis zu 10.000 Wertepaare pro Insert.
Der Vorteil von dieser Methode ist, das er nicht für jedes einzelne Wertepaar
ein Insert vorbereiten muss. Du sparst enorm viel Zeit.

Nur damit du eine Einschätzung hast. Wenn du 50000 Zeilen einzeln in eine
DB schreibst dauert das ca 20min. Schreibst du 5 * 10000 in eine DB dauert das
15sec.

Viele Grüße Maveric
Bitte warten ..
Mitglied: chef1568
01.02.2013 um 14:07 Uhr

Hallo und danke schonmal für die Info.
Habe gestern wget installiert und lange probiert - aber es kommt immer zu Fehlermeldungen (bei deinem Beispiel "Port fehlt")
Mit anderen Befehlen wird entweder abgebrochen oder eine Datei gedownloaded mit dem Inhalt: "Autorisierung fehlt"


Hier die Anforderung an den Befehl:

1. login auf Seite: http://example.com/ --> mit "Post"
<form id="loginbox" method="post" action="http://example.com/login.php?action=process;>"
....
<input type="text" name="email_address" maxlength="50" style="width:170px;" />
...
<input type="password" name="password" maxlength="30" style="width:80px;" />
<input type="image" src="/button_login_small.gif" alt="Anmelden" title=" Anmelden " />
...
</form>
2. Anstoß zum Erstellen der CSV-Datei mit http://example.com/getExportCSV.php
3. Downloaden der erstellten Datei

Danke schonmal für die Hilfe
Bitte warten ..
Mitglied: Epixc0re
01.02.2013, aktualisiert um 14:11 Uhr
Login
wget --save-cookies=ZIELDATEI --post-data="POST_DATEN" http://URL


Download
wget --load-cookies pfad_zum_cookie download_link
Bitte warten ..
Mitglied: chef1568
01.02.2013 um 14:40 Uhr
Vielen Dank für die Antwort, werde ich später gleich mal ausprobieren.

Die beiden Befehle rufe ich ja bestimmt über eine Batch auf...
Gestern hatte ich das Problem, dass beim wget über ne Batch der Befehl X-Mal gesendet wurde - warum auch immer^^

@echo off
wget ...........
pause
Bitte warten ..
Mitglied: chef1568
05.02.2013, aktualisiert um 12:26 Uhr
Hallo nochmal,

habe leider noch Probleme mit dem Login.
Hab jetzt folgenden Befehl:
wget --keep-session-cookies --save-cookies cookies.txt --post-data "email_address=@.de&password=" http://example.com

Daraufhin kommt aber folgende Meldung:
...
HTTP Anforderung gesendet, warte auf Antwort... 200 OK
Länge: nicht spezifiziert [text/html]
In >>index.html<< speichern.
....

die cookies.txt enthält folgenden Inhalt:
  1. HTTP cookie file.
  2. Generated by Wget on 2013-02-05 00:22:05.
  3. Edit at your own risk.

.example.com TRUE / FALSE 0 XTCsid


anscheinend klappt der login noch nicht ganz
wenn ich die cookies.txt wieder lade und das erstellen der CSV anstoße wird mir die Datei mit folgendem Inhalt erstellt:
ERROR: Not logged in!
Bitte warten ..
Mitglied: Epixc0re
05.02.2013 um 09:04 Uhr
Hallo,

dann verrate uns bitte zunächst:

a.) welche Software das ist wo Du dich einloggst (HTML Sample vom <form> Tag)
b.) welche Befehle Du genau ausgeführt hast.

Denn, ein spezifischer Ratschlag ohne diese Details ist nicht mehr möglich.
Bitte warten ..
Mitglied: chef1568
05.02.2013, aktualisiert um 12:27 Uhr
a) habe ich bereits oben gepostet:
<form id="loginbox" method="post" action="http://example.com/login.php?action=process;>"
....
<input type="text" name="email_address" maxlength="50" style="width:170px;" />
...
<input type="password" name="password" maxlength="30" style="width:80px;" />
<input type="image" src="/button_login_small.gif" alt="Anmelden" title=" Anmelden " />
...
</form>
Die eingesetzte Software ist xtcModified eCommerce Shopsoftware

b) und der Befehl:
wget --keep-session-cookies --save-cookies cookies.txt --post-data "email_address=@.de&password=" http://example.com

Mit freundlichen Grüßen
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Windows 10
gelöst Windows 10: Standardprofil für lokale und Domain-Konten erstellen

Frage von Wintektiv zum Thema Windows 10 ...

Windows Server
gelöst MS-SQL Server lokale Authentifizierung - Logging (5)

Frage von ThomasAnderson zum Thema Windows Server ...

Windows Userverwaltung
gelöst Lokale Netzwerkfreigabe auf Domainrechner erstellen (7)

Frage von Jinrak zum Thema Windows Userverwaltung ...

Heiß diskutierte Inhalte
Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

Grafikkarten & Monitore
Tonprobleme bei Fernseher mit angeschlossenem Laptop über HDMI (11)

Frage von Y3shix zum Thema Grafikkarten & Monitore ...

Microsoft Office
Keine Updates für Office 2016 (11)

Frage von Motte990 zum Thema Microsoft Office ...