JustCode - ein Hochgeschwindigkeitsbrowser für preisgünstige Computer und Tablets unter Windows



Hintergrund


Ich habe ein miserables billiges Tablet unter Windows 10 mit einem Gigabyte RAM und 16 Gigabyte Speicherplatz, in dem Windows 10 installiert ist. Damit Windows 10 Updates herunterladen und installieren kann, habe ich die Größe der Auslagerungsdatei auf Null und die Auslagerungsdatei geändert. sys hat aufgehört, wertvolle Gigabyte aufzunehmen.

Danach stellte ich überrascht fest, dass es unmöglich ist, Chrome, Internet Explorer oder sogar die alte Opera 12 zu verwenden, um mehr oder weniger große Websites auf diesem Tablet anzuzeigen. Alle versuchen, die Website ein paar Mal anzuzeigen und neu zu starten (es scheint Es passt nicht in den realen Arbeitsspeicher ohne Auslagerungsdatei. Nach dem zweiten Versuch, es herunterzuladen, wird eine Fehlermeldung angezeigt.

Warum kann ein Computer mit einem Gigabyte RAM den Quell-HTML-Code der Site nicht zeichnen, wenn er mehrere hundert Kilobyte beträgt?

Anscheinend, weil die Site aus bunten Elementen besteht, einschließlich JavaScript-Skripten (oder sogar VB) (die nach dem Laden und bei Ereignissen wie „Mausbewegung über ein Element“ usw. ausgeführt werden müssen), CSS-Stilen, Frames mit anderen Seiten , Medien (Bilder, Musik, Videos usw.). Wenn eine Site geladen wird, lädt der Browser den Haupt-Site-Code und beginnt dann mit dem Laden verwandter Dateien, dem Ausführen und Vorbereiten von Skripten für die Ausführung, dem Laden und Anzeigen von Bildern, dem Laden von Stilen, dem Berechnen des endgültigen Stils für jedes Seitenelement nach dem Anwenden mehrerer Stile, dem Platzieren aller Elemente auf der Seite und Erst dann kann der Benutzer die Site sehen.

Ich möchte die Site schnell und sofort sehen (nur den HTML-Code herunterladen) und nur die Elemente, die mich interessieren:

  • Auf einer Seite möchte ich nur den Text sehen
  • zu einem anderen Text mit Links
  • auf dem dritten nur Bilder, aber nicht alle, sondern selektiv eins nach dem anderen manuell laden
  • am vierten möchte ich zusätzlich kommentare lesen
  • Lesen Sie am fünften den Java-Skriptcode und schalten Sie die Anzeige aller anderen Elemente aus.

Und in einigen Fällen möchte ich beim Surfen auf Websites nicht:

  • siehe Fenster / Panels mit Werbung in Form von Fotos und einfachen Animationen zu vollwertigen stimmhaften Videos,
  • Weitere Informationen finden Sie in den Fenstern "Abonnieren Sie unseren Newsletter von unserer Website aus".
  • Sehen Sie sich die Fenster "Benachrichtigungen von unserer Website aktivieren" an oder machen Sie auf die alte Art "Unsere Homepage erstellen".
  • In den Fenstern können Sie der Geolokalisierung mitteilen, wo Sie sich befinden, unser Kunde.
  • siehe die Fenster "Entschuldigung, wir verwenden Cookies auf dieser Website",
  • Cookies übertragen.

Wie kann man das machen? Es ist klar, dass Sie einen anderen Browser schreiben und verwenden müssen!

Zuerst schien mir alles einfach zu sein. Nehmen Sie einen HTML-Code-Parser und schreiben Sie ihn. Wir laden die Tags, zerlegen sie in Teile, zeigen den Text außerhalb der Tags als Text an. Wenn Sie beispielsweise auf href = " habr.com " stoßen , zeigen wir ihn als Link an. "Delov!" Dachte ich und setzte mich zu Delphi.

Implementieren einer Auswahl von Elementen, die angezeigt werden sollen


Die Liste der Elemente, die zum Anzeigen aktiviert oder deaktiviert werden können, ist während der Entwicklung des Browsers gewachsen.



Hier erschienen der Text der Site selbst und die Ränder von Tabellentabellen / Div-Ebenen sowie separater Text mit „Akzenten“ (fett, kursiv und andere hervorgehobene Tags), Links und Lesezeichenankern, Medien (Bilder, Musik, Video), verwandte Dateien "Link ...", Kommentarzeichen "! - ... -" sowie Skripte, Stilstile, Formularformulare, Metametadaten mit der Möglichkeit, ihren Code anzuzeigen. Für jeden Elementtyp können Sie die Farbe und Fettdruck des Texts auswählen. Sie können auch ein vorgefertigtes Thema auswählen, das eine bestimmte Farbgebung der Elemente sowie den Stil des Textes enthält.

Allgemeine Einstellungen implementieren


Der obere Teil des Browserfensters wurde schließlich mit Einstellungen bedeckt und ähnelte Panels mit MS Office-Schaltflächen. Es gab Flags, Dropdown-Listen und Schaltflächen zum Aufrufen von Funktionen wie Lesezeichen oder Verlauf.



Dort können Sie beispielsweise den Namen und die Größe der Schriftart auswählen, die Sie wie in einem Texteditor anzeigen möchten. Es wurde auch möglich, eine Raster-PCF-Schriftart eines Drittanbieters (PaintCAD Font) herunterzuladen und ein Bild mit dieser Schriftart zu zeichnen. Im Screenshot ist die Schriftart sc60micro.pcf geladen, handgezeichnet aus dem Browser des alten Telefons. Wahrscheinlich erinnert sich noch jemand an diesen WAP-Browser von Siemens vor 15 Jahren:



Implementieren Sie die Datenschutzeinstellungen


Direkt unter den allgemeinen Einstellungen befinden sich die Datenschutzeinstellungen:



Mit dem Kontrollkästchen Referer können Sie die Übertragung der Adresse deaktivieren, von der aus Sie zur Webseite gelangt sind. Cookie-Flag - Cookies deaktivieren.

Über das Feld User-Agent können Sie auswählen, wer Sie vorgeben möchten - einer der Computer- oder mobilen Browser, oder Sie können sogar googeln / bing / yandex / mailru-bot. Wenn Sie eine der Optionen auswählen, wird im Text rechts der Text für den http-Header angezeigt, der an den User-Agent-Server gesendet wurde. In diesem Feld können Sie Ihren Benutzeragenten auch manuell eingeben, anstatt eine der vom Browser angebotenen Optionen auszuwählen.



Arbeiten mit herunterladbaren Dateien: Objektfenster und Dateibereich


Wenn der Browser beispielsweise auf einen Link zu einem Bild stößt, schreibt er einen Link in der Form „Bild: Adresse“. Durch Klicken darauf wird der Link in das Bedienfeld des Objekts übertragen.

Abhängig davon, ob die vollständige Speicherung des Datenverkehrs oder die Speicherung des Datenverkehrs beim Herunterladen enthalten ist, werden die Dateiinformationen im Feld Objektinformationen angezeigt.



Der Benutzer entscheidet, ob er die Datei herunterlädt oder nicht (wenn er beispielsweise über das mobile Internet sitzt und den Datenverkehr bedauert und sich herausstellt, dass die Datei groß ist, können Sie sie nicht herunterladen). Sie können die Datei über die Schaltfläche zum Herunterladen rechts neben dem Objektfeld herunterladen.

Wenn das Speichern deaktiviert ist, wird die Datei automatisch in den Download-Ordner neben der EXE-Datei des Browsers heruntergeladen und:

  • Standardmäßig im Programm öffnen, wenn es sich um eine sichere Datei handelt (Bild, Musik, Video).
  • wurde in das Dateifeld verschoben und im Explorer-Fenster hervorgehoben, das geöffnet wird, wenn die Datei möglicherweise gefährlich oder dem Browser unbekannt ist.

Dateibereich:



Es enthält ein Feld mit dem Namen der gespeicherten Datei und Schaltflächen:

  • Standardmäßig Öffnungen im Programm,
  • Öffnen Sie einen Ordner mit einer Datei mit Fokus auf die Datei.
  • Öffnen einer Datei im JustCode-Browser selbst,
  • Öffnen einer Datei im Editor notepad.exe.

Hauptmenü für Touchscreen


Durch Klicken auf das Browsersymbol in der oberen linken Ecke wird ein Menü mit 32 x 32 Pixel-Symbolen geöffnet, das viele Funktionen des Hauptfensters dupliziert. Dieses Menü enthält Elemente mit einer relativ großen Höhe, wodurch es viel einfacher ist, sie mit dem Finger zu drücken, als wenn Sie auf kleine Flags wie die UTF-8-Codierung oder das Auswahlelement für den Verkehrssparmodus abzielen.



Arbeiten Sie mit dem Quellcode der Site und der Automatisierung


Wenn Sie Strg + E drücken oder einen ähnlichen Befehl im Hauptmenü auswählen, wird der vollständige Quellcode der Site im Objektinformationsbereich abgelegt.

Dort können Sie in der Zeile „Suchen“ Text eingeben und mit den Schaltflächen mit einer Lupe (erstes Vorkommen, nächstes Vorkommen, letztes Vorkommen) im Quellcode danach suchen.



Andere farbenfrohe Schaltflächen unterhalb des Suchfelds ermöglichen (viele JustCode-Schaltflächen enthalten QuickInfos, die ihre Funktionen beschreiben):

  • alle über oder unter dem ausgewählten / gefundenen Text löschen,
  • % xx Codes in Zeichen verwandeln,
  • verwandle Javascript-Codes wie \ n in Zeichen,
  • Fügen Sie vor / nach jedem gefundenen Text Bindestriche ein, ähnlich dem in der Zeile "Suchen" eingegebenen.
  • Löschen Sie alle Zeilen, die keinen Text enthalten, der in die Zeile "Suchen" eingegeben wurde
  • Überprüfen Sie alle verbleibenden Zeilen im Zeilenbereich als http-Links zu Dateien.
  • Laden Sie den geänderten Site-Quellcode zur Anzeige auf JustCode hoch.
  • und öffnen Sie sogar den Programmeditor (Skripte) (Strg + F5), mit dem Sie die beschriebenen Tasten automatisch auf Befehlsart "drücken" können.

Editor eigener JustCode-Programme




In diesem Editorfenster wird beispielsweise eine Vorlage geöffnet, die den Seitencode aus dem YouTube-Video zu einzelnen Links zu Video und Audio führt.

Es ist klar, dass es Online-Dienste gibt, die dasselbe tun. Mit dem Editor können Sie ein solches Skript jedoch ausführen, ohne Dienste von Drittanbietern zu verwenden, und „YouTube ansehen“, ohne Java-Skripte der Videoseite zu starten.

Geschriebene Skripte können in Dateien gespeichert werden, und diese Dateien können an die Schnellstartschaltflächen „gebunden“ (zugewiesen) werden, sodass sie über Alt + 1, Alt + 2 ... Alt + 0 über das Hauptbrowserfenster gestartet werden können, ohne das Programmeditorfenster zu öffnen.

Mit Formularen arbeiten


Wenn ein Formular in Tags erfüllt ist, zeigt der Browser das Formular als "Formular" -Link an:



Wenn diese Taste gedrückt wird, wird ein spezielles Fenster geöffnet, in dem der Inhalt des Formulars angezeigt wird (das Anmeldeformular für mail.ru wird angezeigt):



Wenn Sie oben das Kontrollkästchen "Erweiterter Modus" aktivieren, wird der Formularcode selbst angezeigt. Die Schaltfläche "Senden" sendet die Seite nicht, sondern bereitet die URL und (falls erforderlich) die POST-Daten für die Übermittlung vor und zeigt sie in den entsprechenden Feldern an. Sie können sie bei Bedarf manuell korrigieren und nach Klicken auf "Senden und loslegen" die angegebenen Daten an den Server senden.



Wenn Sie auf die Schaltfläche "Programm zum Senden von Daten erstellen" klicken, wird ein Skript erstellt, das die aktuelle URL festlegt und das Senden der Daten bewirkt. Emulieren von Dateneingaben auf einer Webseite in ein Formular und Senden.



Gleichzeitig werden POST-Daten auch in der URL angezeigt, jedoch durch ein doppeltes Fragezeichen getrennt. Das heißt, Single "?" Ist GET und doppelt "??" Ist ein POST.

Ein ähnlicher "Link" zum Senden der eingegebenen Formulardaten mit der GET-Methode (mit einem einzelnen "?") Oder der POST-Methode (mit einem doppelten "??") erhalten Sie, indem Sie im Formulareditor auf die Schaltfläche "URL- und POST-Daten als Link in die Zwischenablage kopieren" klicken .

Dateien in einem Browser anzeigen


Nach dem Herunterladen einer unverständlichen Datei müssen Sie möglicherweise sehen, was sich darin befindet. Daher verfügt der Browser über drei Anzeigemodi:

  • als HTML-Code mit Parsing und Rendering (F12),
  • als Text in Windows / DOS-Codierung (Umschalt + F12),
  • als hexadezimale Darstellung mit Codes und Text (Strg + F12).

Sie werden im Menü oder in den oben genannten Tastaturkürzeln mit Umschalt / Strg + F12 ausgewählt.



Wenn Sie das MonoDOS / MonoDOS2-Design auswählen oder eine DOS-PCF-Schriftart laden (und das Kontrollkästchen „DOS-Codierung“ im PCF-Schriftartenmenü aktivieren) oder die OEM_CHARSET-Codierung mit einer beliebigen Schriftart auswählen, können Sie alte Textdateien mit Pseudografiken direkt im Browser anzeigen.



Mit Strg + F12 können Sie die Hex-Darstellung der Datei und beispielsweise in der Kopfzeile sehen, um zu verstehen, was wir heruntergeladen haben, oder um zu erfahren, wie es funktioniert, beispielsweise in einer Exe-Datei eines Notizblocks.



Fazit


Es stellte sich heraus, dass beim Erstellen eines Browsers nicht nur ein Parser geschrieben wird. Diesem Browser fehlt noch viel.

Zum Beispiel das Entpacken empfangener Daten vom Server. Daher sieht die Site games.mail.ru beispielsweise wie eine Reihe von zufälligen Bytes aus, weil Die Site hört nicht zu und sendet gepackte Daten, selbst wenn Sie aufgefordert werden, nur entpackte Daten in http-Headern zu senden.



Außerdem weiß der Browser nicht, wie Dateien in Formularen gesendet werden sollen. Er kann nur Daten als "application / x-www-form-urlencoded" erstellen.

Auch damit gehen Sie nicht zu geskripteten Sites wie instagram. Es gibt nur Skripte, die den Inhalt laden sollen.



Aber damit können Sie Nachrichtenseiten lesen und sogar auf einem schwachen Tablet und unter jedem Windows (95, 98, 2k, XP, Vista, 7, 8, 10) in Foren sitzen, obwohl HTTPS-Seiten unter alten Windows möglicherweise nicht fehlschlagen, wenn Algorithmen wie SHA2 werden vom Betriebssystem nicht unterstützt, da sie zum Zeitpunkt der Entwicklung noch nicht bekannt waren. Laden Sie Bilder selektiv hoch und sehen Sie sie sofort in Ihrem bevorzugten Bildbetrachter an, zeigen Sie Website-Skripte an und lesen Sie manchmal lustige Kommentare ihrer Entwickler, überwachen Sie die Struktur von Websites (Sie) Beachten Sie sofort, dass ein Werbeblock hinzugefügt wurde oder ishny Banner, wenn jeder Tag das gleiche Nachrichtenportal zu lesen).


(Silbentrennung wurde noch nicht geliefert).

Test-Benchmark herunterladen


Es wiegt etwa 500 Kilobyte.
Sie können den Link blackstrip.ru/jc.zip herunterladen

Source: https://habr.com/ru/post/de465709/


All Articles