Willkommen zurück.
Wir haben unsere Daten, aber sie sind immer noch irgendwie schmutzig.
Ich meine, wir haben nicht wirklich gefiltert, ich interessiere mich nur für die Geschichten mit über hundert Stimmen und wir
wollen auch eine schöne Möglichkeit, sie anzuzeigen.
Also arbeiten wir daran.
Ich möchte eine Funktion erstellen und wir nennen sie create.
Benutzerdefinierte Hacker-Nachrichten und diese benutzerdefinierten Hacker-Nachrichten werden Links und Stimmen erhalten.
Was wir hier drüben haben.
Hier drin werden wir eine neue Hacker-Newsliste erstellen, die zu Beginn leer
ist.
Und im Moment möchte ich nur die Hacker-Newsliste zurückgeben.
Aber innerhalb dieser Liste möchte ich nur den Text hinzufügen und keine E-Mail.
So kümmern wir uns beispielsweise bei den Links nur um den Titel.
Wie können wir das tun?
Wir wollen einige Dinge durchschleifen.
Wir sagen vier und verwenden hier Aufzählen.
Wir haben also einen Index und dann ein Element.
Und hier werden wir aufzählen.
Denken Sie daran, wir haben die Aufzählung schon einmal gesehen, die uns auch einen Index liefert.
Und wir werden die Links aufzählen und ich zeige Ihnen, warum wir im zweiten aufzählen wollen.
Ich möchte hier also den Titel jedes Links abrufen.
Indem wir dies einfach tun, werden wir Link sagen.
Von Index.
Oder weniger Änderungen an IDEX, das ist ein bisschen schöner.
Also greifen wir zu.
Index jedes Links, und wir können etwas in einer schönen Suppe namens Get Taxed verwenden, und dies wird den Text
in den Text einfügen.
Und um uns damit anzufangen, werde ich einfach sagen, dass Hacker Punkt anhängen und der Liste den
Titel hinzufügen.
Mal sehen, was passiert, wenn ich das aufrufe.
Ich werde sagen, erstelle benutzerdefinierte Hacker-News und wir werden sie, die Links und die Stimmen weitergeben.
Also lass uns das speichern.
Oh, und es sieht so aus, als ob ich hier Aufzählen nicht buchstabieren kann, also lass uns das beheben.
Sollte ein neuer Moderater bei E sein!
Versuchen wir es noch einmal.
Alles klar, keine Fehler, aber wir möchten das idealerweise drucken, also sagen wir es einfach.
Und sehen Sie, was wir bekommen.
Ich werde das laufen lassen.
Okay, sieh dir das an, wir haben alle Texte, die Titel unserer Links, das ist großartig.
OK, aber diese Titel sind ohne Link nutzlos, oder?
Und wenn Sie sich an einen Link in einer E-Mail erinnern.
Wird mit einer sogenannten H ref definiert, ist dieses h ref-Attribut der Link, auf den wir klicken können, um
zur nächsten Seite oder zu der Seite dieses Titels zu gelangen.
Also können wir das auch greifen und wir können es A nennen. F. und das wird gleich.
Länge ist.
Index.
Und dieses Mal wollen wir nicht den Text bekommen, sondern das Attribut richtig machen, damit wir
tatsächlich dot get sagen und dann das Flugzeug schnappen können.
Und nur für den Fall, dass es keine Festnahmen gibt oder die Verbindung möglicherweise unterbrochen ist, können wir im zweiten Parameter einen Standardwert
angeben und ich sage einfach keine.
Also, wie können Sie das jetzt aussetzen, wenn wir nur Geld ausgeben, sagen wir, diesmal der Schiedsrichter und ich führen das aus?
Sieh dir das an, wir haben alle Links auf der Seite, das ist großartig, aber wie können wir jetzt den Titel und
die Referenz kombinieren?
Nun, das sollte ziemlich einfach sein, oder?
Wir können ein Wörterbuch benutzen.
In unserer Liste können wir also ein Wörterbuch mit dem Titel anhängen, der der Titel ist, den wir hier haben.
Und dann auch.
Habe den Link.
Das wird der Ashraf sein.
Gleich hier.
Hier wird jetzt also ein Wörterbuch mit Titel und Link stehen.
Also wenn ich spare.
Und führen Sie dies erneut aus.
Sehen Sie sich das an, wir haben ein Wörterbuch mit einem Link.
Und auch ein Titel.
Fantastisch.
Also schnappen wir uns die Informationen, die wir brauchen, wir schnappen uns den Link und den Text, alles andere interessiert uns nicht, aber wir
haben immer noch die Stimmen.
Wie können wir das tun?
Die Stimmen, nun, wir können eine Variable erstellen oder statt Stimmen, nur um es davon zu unterscheiden, sagen
wir einfach Punkte.
Und Punkte werden sein, nun, was werden wir tun, wir werden die Stimmen einholen.
Index.
Denken Sie daran, wir durchlaufen das hier.
Und wir werden einfach sagen, besteuert werden.
Sehen wir uns nun an, was wir zunächst bekommen, wenn wir besteuert werden.
Also hier drin werde ich einfach drucken.
Punkte und sehen Sie, was wir bekommen, und ich werde den Druck hier entfernen, damit wir uns vorerst auf die Punkte konzentrieren
können.
Also werde ich speichern und laufen.
Okay, wir kommen rein, wir bekommen all diese Punkte, aber es sieht so aus, als ob ich eine Fehlermeldung
bekomme, die besagt, dass der Listenindex außerhalb des zulässigen Bereichs liegt, und dies ist ein kleiner Fallstrick, den Sie manchmal beim Scrapen von Websites debuggen
müssen.
Aber im Wesentlichen ist hier eine Geschichte passiert, und dies ist eine besondere, die eigentlich keine Stimmen
hat, was auf der Titelseite von Hacker News sehr selten vorkommt.
Aber dieser hier hat keine Stimmen.
Also im Wesentlichen, was es sagt, ist, dass ich nie die Punktzahlen gepackt habe, die Punkte davon.
Wir haben also technisch gesehen mehr Links als wir Stimmen haben.
Wenn wir also zum letzten Link hier kommen, ist die Liste der Stimmen eine weniger.
Also heißt es: Hey, ich versuche die Stimmen ganz am Ende zu bekommen, aber es gibt keine Stimmen mehr.
Diese Liste ist kürzer als die Linkliste.
Also können wir hier einfach einen kurzen Check machen, um sicherzustellen, dass wir uns nur für Geschichten mit Stimmen interessieren, wenn wir uns
diese Dinge schnappen.
Und zum Glück für uns wollen wir deshalb prüfen, ob eine Geschichte mehr als hundert Punkte hat.
So wie wir das machen, fügen wir jetzt hier eine if-Anweisung hinzu, bevor wir
die if-Anweisung hinzufügen. Wir wollen dies eigentlich in eine Zahl umwandeln, damit wir sagen können, hey, wenn
eine Geschichte mehr hat als 100 Hundert Punkte, dann wollen wir es behalten und an unsere neuen Hacker-News angehängt.
Das erste, was wir tun möchten, ist es einfach zu sagen.
Dass wir dies in eine int.
Aber wir wollen auch ersetzen.
Die Punkte hier, der Raum zeigt ins Nichts, also können wir die Punktersetzungsmethode verwenden und einfach sagen,
hey, jedes Mal, wenn Sie Raumpunkte sehen, was wir hier sehen.
Ich möchte, dass Sie das nur durch eine leere Zeichenfolge ersetzen.
Dies wird also für uns einen String zurückgeben, der eine Zahl ist, und ihn dann in eine ganze Zahl umwandeln.
Also lass es uns testen.
Schließen wir hier die Klammer.
Gehen Sie auf Nummer sicher und führen Sie unser Skript aus.
Und los gehts.
Wir haben unsere Zahlen, das ist großartig, aber wir haben immer noch diesen Fehler.
Was können wir hier also tun?