Hallo, Gast
Du musst dich registrieren bevor du auf unserer Seite Beiträge schreiben kannst.

Benutzername
  

Passwort
  





Durchsuche Foren

(Erweiterte Suche)

Foren-Statistiken
» Mitglieder: 1
» Neuestes Mitglied: Joopi
» Foren-Themen: 466
» Foren-Beiträge: 645

Komplettstatistiken

Benutzer Online
Momentan sind 10 Benutzer online
» 0 Mitglieder
» 5 Gäste
AhrefsBot, Bytespider, DotBot, Semrush, bot

Aktive Themen
Saturday - 05:00 CST: Not...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Vor 1 Stunde
» Antworten: 0
» Ansichten: 0
Saturday - 02:00 CST: Not...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Vor 3 Stunden
» Antworten: 0
» Ansichten: 3
Friday - 19:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Vor 11 Stunden
» Antworten: 0
» Ansichten: 10
Friday - 15:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Heute, 12:53
» Antworten: 0
» Ansichten: 12
Friday - 11:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Gestern, 08:56
» Antworten: 0
» Ansichten: 10
Friday - 08:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Gestern, 05:56
» Antworten: 0
» Ansichten: 10
Friday - 05:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Gestern, 02:41
» Antworten: 0
» Ansichten: 9
Daten aus Tabelle in eine...
Forum: Programmieren
Letzter Beitrag: Joopi
Gestern, 02:41
» Antworten: 0
» Ansichten: 10
Friday - 04:00 CST: Not a...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Gestern, 01:38
» Antworten: 0
» Ansichten: 9
Thursday - 17:00 CST: Not...
Forum: Wetter in Little Rock
Letzter Beitrag: Joopi
Gestern, 02:17
» Antworten: 0
» Ansichten: 10

 
  Sunday - 12:00 CST: Not available, 11°C (52°F)
Geschrieben von: Joopi - 07-01-2024, 10:30 - Forum: Wetter in Little Rock - Keine Antworten

Sunday - 12:00 CST: Not available, 11°C (52°F)

Temperature: 11°C (52°F), Wind Direction: Northerly, Wind Speed: 8mph, Humidity: 46%, Pressure: 1021mb, Falling, Visibility: Good


https://www.bbc.co.uk/weather/

Drucke diesen Beitrag

Brick eMail analysieren und zerlegen
Geschrieben von: Joopi - 07-01-2024, 10:30 - Forum: Programmieren - Antworten (1)

Jeder von uns bekommt wahrscheinlich jeden Tag Mails. Die einen bekommen mehr, die anderen bekommen weniger.

Die wenigsten User machen sich heutzutage darüber Gedanken, wie eine Mail entsteht bzw. aus welchen Bestandteilen diese zusammen gesetzt ist.

In einer anderen Sache habe ich mich genau damit beschäftigt, was eine Mail ausmacht und was sie alles enthalten kann sowie wie diese in unserem Mailclient bzw. online beim Mailanbieter für uns zu lesen ist.

Meine Aufzeichnungen sind nicht abschließend, sondern spiegeln mein Wissen wider und zeigen das, was ich bislang erreicht habe.

Generell kann man sagen, dass eine Mail 2 Hauptbestandteile (Mailheader und Mailbody) mit 3 Sektionen hat:

  • Mailheader
  • Mailbody mit Mailtext Plain/HTML
  • Mailbody mit Anlagen

Der Mailheader beinhaltet alle technsichen Informationen, die die einzelnen Stellen, die die Mail ausliefern bzw. weiterleiten mitgegeben haben.

Die Mailtext kann in zwei Formaten vorliegen (entweder oder / beides zusammen):
  • Plaintext (also Klartext)
  • HTML-Text (HTML-Rohdaten)

Sobald eine Mail Plaintext und HTML-Text enthält, bekommt sie das Attribut: multipart (dazu später mehr)

Eine Mail kann im Klartext oder kodiert ausgeliefert werden. Wird sie kodiert ausgeliefert, so ist dies die base64-Kodierung.

Wichtig bei der Darstellung des Mailtextes ist es zu wissen, mit welchem Zeichensatz (charset) die Mail verfasst wurde. Generell nutzen die westlichen Ländern mittlerweile den Zeichensatz utf-8, aber besonders aus dem kyrillisch-sprachigen Raum kommen oftmals andere Zeichensätze mit. Das liegt oftmals daran, die der Mailclient es Mailverfassers eingerichtet ist.

Mailtexte im Klartext haben folgenden Eintrag: Content-Transfer-Encoding: quoted-printable

Mailtexte können aber auch eine Kodierung haben: Content-Transfer-Encoding: base64

Damit sind die Mailtexte als Rohdaten der Mail nicht lesbar und müssen dekodiert werden.

Alle Anlagen werden für gewöhnlich base64-kodiert: Content-Transfer-Encoding: base64

Die derzeit für mich wichtigsten Zeichensätze sind neben utf-8 die folgenden:
  • iso-8859-1
  • iso-8859-2
  • iso-8859-15
  • windows-1250
  • windows-1251
  • us-ascii
  • koi8-r

Es ist wirklich nicht einfach für den Hobbyprogrammierer, eine Mail zu analysieren und die Mailtext lesbar ohne Sonderzeichen zu machen und die Anlage abzuspeichern.

Je nach dem, welcher Zeichensatz genutzt wird, gibt es immer wieder andere Vorgehensweisen, um die Mail analysieren zu können.

In den folgenden Antworten auf diesen Eröffnungsthread möchte ich meine Erkenntnisse dokumentieren, da sie mittlerweile ein PHP-Skript umfassen, dass aus dem Ruder läuft.  Big Grin

Die in dem primären Beispiel verwendete Mail ist eine Phantasiemail mit Phantasiedaten soweit es die Identität der beteiligten Personen angeht.

Die Mail wird eine Multipart-Mail sein, mit dem Zeichensatz utf-8, mit Plain- und HTML-Text sowie mit Anlagen.

MIME 1.0
Show Content

multipart/mixed
Show Content

multipart/alternative
Show Content

attachments
Show Content

image/jpeg

Show Content

Drucke diesen Beitrag

  Sunday - 11:00 CST: Not available, 8°C (46°F)
Geschrieben von: Joopi - 07-01-2024, 09:31 - Forum: Wetter in Little Rock - Keine Antworten

Sunday - 11:00 CST: Not available, 8°C (46°F)

Temperature: 8°C (46°F), Wind Direction: Westerly, Wind Speed: 5mph, Humidity: 65%, Pressure: 1022mb, Rising, Visibility: Good


https://www.bbc.co.uk/weather/

Drucke diesen Beitrag

Lightbulb HTML-Tags decodieren
Geschrieben von: Joopi - 07-01-2024, 09:31 - Forum: Programmieren - Keine Antworten

In der letzten Zeit kommt es immer häufiger vor, dass ich HTML-Texte als Rohdaten in eine MySQL-Datenbank erfasse. Der Umgang mit HTML-Tags sind insgesamt nicht immer einfach, aber wenn man weiß, was man will, dann kann man sich sehr gut helfen.

Wenn HTML-Rohdaten nicht in einem Browser ausgeführt werden, dann gibt es unschöne Leseansichten bzw. die Daten sind nicht in einer MySQL-Datenbank erfassbar.

Wer einen HTML-Text außerhalb eines Browsers lesen will, der sollte tunlichst die HTML-Tags ausblenden.
Wer einen HTML-Text in eine Datenbank, z.B. MySQL, erfassen will, der muss diverse Sonderzeichen masieren, die sonst bei der Erfassung zu einem Fehler führen.

Fall 1
Ein HTML-Rohtext wird in der Konsole ausgegeben

Code:
$text = "<p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>";
echo "Text 1 " . $text . "\n";
Ergebnis
Zitat:Text 1 <p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>

Fall 2
Die HTML-Rohdaten werden gestript, um den Text lesbar zu machen
Code:
$text2 = "<p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>";
$text2 = strip_tags($text2);
echo "Text 2 " . $text2 . "\n";
Ergebnis
Code:
Text 2 Das ist mein Text, der ausgegeben werden soll.

Fall 3 entfällt

Fall 4

Die HTML-Rohdaten werden als Entities umgewandelt
Code:
$text4 = "<p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>";
$text4 = htmlentities($text4);
echo "Text 4 " . $text4 . "\n";
Ergebnis
Code:
Text 4 &lt;p&gt;Das ist mein Text, der &lt;strong&gt;ausgegeben&lt;/strong&gt; werden soll.&lt;/p&gt;

Fall 5

Insbesondere bei der Erfassung von HTML-Rohdaten in einer MySQL-Datenbank ist der folgende Befehl zu nutzen.
Code:
$text5 = "<p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>";
$text5 = htmlspecialchars($text5);
echo "Text 5 " . $text5 . "\n";
Ergebnis
Code:
Text 5 &lt;p&gt;Das ist mein Text, der &lt;strong&gt;ausgegeben&lt;/strong&gt; werden soll.&lt;/p&gt;

Fall 6 entfällt

Fall 7
Die HTML-Entitäten werden wieder zurückgewandelt.
Code:
$text7 = "&lt;p&gt;Das ist mein Text, der &lt;strong&gt;ausgegeben&lt;/strong&gt; werden soll.&lt;/p&gt;";
$text7 = htmlspecialchars_decode($text7);
echo "Text 7 " . $text7 . "\n";
Ergebnis
Code:
Text 7 <p>Das ist mein Text, der <strong>ausgegeben</strong> werden soll.</p>

Wie wohl zu erkennen ist, kann man die HMTL-Tags bzw. die Zeichen, die nicht einfach so in eine MySQL-Datenbank erfasst werden können, ohne sie zu maskieren, so umwandeln, dass man damit arbeiten kann.

Der Fall 2 zeigt, dass die HTML-Rohdaten in einen gut lesbaren Fließtext umgewandelt werden können.
Die Entities können in die eine, aber auch wieder in die andere Richtung zurückgewandelt werden.

Ich nutze diese Erkenntnisse derzeit so, dass ich Mailheader aus eMails in eine MySQL-Datenbank speichere, aber auch die entsprechenden Mailtext. Die Mailtexte können in Plaintext und als HTML-Rohdaten vorliegen. Auch dann sind die obigen Erkenntnisse absolut wichtig, um die Datenbankerfassung zu ermöglichen.

Drucke diesen Beitrag

  Sunday - 10:00 CST: Not available, 5°C (42°F)
Geschrieben von: Joopi - 07-01-2024, 07:57 - Forum: Wetter in Little Rock - Keine Antworten

Sunday - 10:00 CST: Not available, 5°C (42°F)

Temperature: 5°C (42°F), Wind Direction: Westerly, Wind Speed: 8mph, Humidity: 76%, Pressure: 1022mb, Rising, Visibility: Good


https://www.bbc.co.uk/weather/

Drucke diesen Beitrag

Lightbulb Linkliste
Geschrieben von: Joopi - 07-01-2024, 07:45 - Forum: Programmieren - Keine Antworten

Links, die wichtig sein können

Eine ältere Beginner-Seite
CPAN - Comprehensive Perl Archive Network
CPAN - How to install CPAN moduls
meta::cpan - Suchmaschine für CPAN
Datei zeilenweise einlesen
PerlMonks
Perl.com
Perl Tutorial
SquarePerl.com
Modern Perl 2014
Perl Maven

Drucke diesen Beitrag

Information CGI auf Webserver ausführbar machen
Geschrieben von: Joopi - 07-01-2024, 07:37 - Forum: Programmieren - Keine Antworten

CGI auf Webserver ausführbar machen

Heute, am 22.07.2021, habe ich es endlich geschafft, im Browser ein cgi-Script aufzurufen.

Geholfen hat mir diese Webseite:

https://www.server-world.info/en/note?os...=httpd&f=2

Ich bin mir nicht sicher, ob ich alles richtig verstanden habe. Eigentlich kenne ich das so, dass es auf dem Webserver (/var/www/html) einen Ordner /cgi-bin gibt.

Die Webseite arbeitet aber mit dem Ordner /cgi-enabled.

Alle meine Versuche hier auf dem Desktop-Rechner als auch auf dem Notebook haben ergeben, dass ich diesen Ordner /cgi-enabled nutzen muss. Der Ordner /cgi-bin funktioniert nicht.

Auch kann ich nicht meinen normalen User zur Anlage von Ordner und z.B. index.cgi nutzen. Die Ordner als auch die Dateien werden mit dem root erstellt und dann über chmod 705 entsprechen berechtigt.

Nur das funktioniert.

Wenn ich den Ordner /cgi-bin so in die Abläufe einbaue, wird später im Browser gezeigt, dass die URL nicht vorhanden ist.

Mit dem Ordner /cgi-enabled wird die Testseite angezeigt:

   

Ich werde noch weitersuchen und mal prüfen, ob ich das anders hätte hinbekommen können.

---

Das ist die Historie der BASH, aus der ich die wichtigen Befehlszeilen herausfiltern werde, um eine Dokumentation zu schreiben:

Show Content

Das eine ist nämlich die Verfügbarkeit von CGI auf dem System, das andere ist die Möglichkeit, um CGI auch auf dem Webserver ausführen zu können. Das sind zwei verschiedene Dinge.

In der Datei cgi-enabled.conf habe ich neben cgi und pl nun auch py eingetragen, um auch Pythonscripte im Browser möglich zu machen. Das funktioniert auch:

   

Damit CGI überhaupt machbar ist, ist dieser Ablauf wohl wichtig:

   

Warum und wieso das alles root-Rechten geschehen muss, habe ich noch nicht verstanden.

Die Sache mit dem Webserver kann dann aus dem folgenden Screener abgelesen werden:

   

So hat es auf dem Desktop-Rechner und auf dem Linux-Notebook funktioniert. Zumindest in Sachen CGI und Perl.

Drucke diesen Beitrag

Information Module installieren mit CPAN
Geschrieben von: Joopi - 07-01-2024, 07:18 - Forum: Programmieren - Keine Antworten

Module für Perl installieren mit cpan

Die einfachste Art und Weise zusätzliche Module für Perl zu installieren ist mittels cpan möglich.

Das Paket cpanminus ist mit root-Rechten zu installieren.

Code:
apt-get install cpanminus

Bevor man nun Module für Perl installieren kann, ist auf der Konsole, ich habe es mit root-Rechten gemacht, folgendes abzusetzen:

Code:
cpan App::cpanminus

Danach kann dann ein Modul, dessen Name man natürlich wissen muss, installieren. In meinem Falle war es das Modul **File::Random**:

Code:
sudo cpanm File::Random

Danach steht das Modul zur Verfügung. In einem Perlscript ist das Modul wie folgt zu verwenden:

Code:
use File::Random qw/:all/;


cpanminus habe ich deswegen installiert, weil es auf dem normalen Wege nicht möglich war, Module zu installieren, da eben Abhängigkeit innerhalb der Module zu geben scheint.

Mit

Code:
make -f Makefile.PL

bzw.

Code:
make -f Makefile.PL

bekam ich Fehlermeldungen beim Ausführen von:

Code:
make test

Die Ausgabe dazu war:

Zitat:
Code:
root@asus:/home/django/perl/neue_module/File-Random-0.21# make test 
PERL_DL_NONLAZY=1 "/usr/bin/perl" "-Iblib/lib" "-Iblib/arch" test.pl 
1..284 
Can't locate Want.pm in @INC (you may need to install the Want module) (@INC contains: blib/lib blib/arc 
h /etc/perl /usr/local/lib/x86_64-linux-gnu/perl/5.28.1 /usr/local/share/perl/5.28.1 /usr/lib/x86_64-lin 
ux-gnu/perl5/5.28 /usr/share/perl5 /usr/lib/x86_64-linux-gnu/perl/5.28 /usr/share/perl/5.28 /usr/local/l 
ib/site_perl /usr/lib/x86_64-linux-gnu/perl-base) at blib/lib/File/Random.pm line 9. 
BEGIN failed--compilation aborted at blib/lib/File/Random.pm line 9. 
Compilation failed in require at test.pl line 10. 
BEGIN failed--compilation aborted at test.pl line 10. 
# Looks like your test exited with 2 before it could output anything. 
make: *** [Makefile:842: test_dynamic] Fehler 2 
root@asus:/home/django/perl/neue_module/File-Random-0.21# make manifest 
"/usr/bin/perl" "-MExtUtils::Manifest=mkmanifest" -e mkmanifest

Die erste Meldung:

Zitat:
Code:
> Can't locate Want.pm in @INC ...

Betrifft ein weitere Modul, welches noch nicht installiert war. Also musste erst das installiert werden, was aber wieder Fehlermeldungen nach sich zog. Daher war die Installation von **cpanminus** eine gute Entscheidung.

---

Bevor ich zur obigen Lösung kam, hatte ich noch folgendes Paket installiert:

Code:
apt-get install libmodule-install-perl

Ob dieses Paket notwendig ist, oder bei der Installation von cpanminus mitinstalliert worden wäre, kann ich derzeit nicht sagen.

---

Drucke diesen Beitrag

  Sunday - 09:00 CST: Not available, 2°C (36°F)
Geschrieben von: Joopi - 07-01-2024, 07:10 - Forum: Wetter in Little Rock - Keine Antworten

Sunday - 09:00 CST: Not available, 2°C (36°F)

Temperature: 2°C (36°F), Wind Direction: Westerly, Wind Speed: 5mph, Humidity: 85%, Pressure: 1021mb, Rising, Visibility: Good


https://www.bbc.co.uk/weather/

Drucke diesen Beitrag

  Tuesday - 00:00 CST: Not available, 2°C (37°F)
Geschrieben von: Joopi - 26-12-2023, 10:00 - Forum: Wetter in Little Rock - Keine Antworten

Tuesday - 00:00 CST: Not available, 2°C (37°F)

Temperature: 2°C (37°F), Wind Direction: West South Westerly, Wind Speed: 3mph, Humidity: 82%, Pressure: 1019mb, Steady, Visibility: Good


https://www.bbc.co.uk/weather/

Drucke diesen Beitrag