Verwendung der Mozscape-API von MOZ mit C #

In diesem Artikel wird die Verwendung der als Mozscape-API bezeichneten MOZ-API unter Verwendung von Code in C # erläutert . Um die Mozscape-API von MOZ wie immer zu verwenden, benötigen wir einige Grundkenntnisse des HTTP-Protokolls, wenn wir den Code in CSharp (C #) verstehen möchten.

In diesem Codebeispiel in C # werden die Parameter DA (Domain Athority) und PA (Page Authority) abgerufen . Wenn Sie nicht wissen, was diese beiden Begriffe bedeuten, können Sie den folgenden Artikel lesen, in dem ich die Domänenautorität und die Seitenautorität beschreibe .

Als erstes müssen wir uns kostenlos auf der MOZ- Website registrieren und die API-Daten “Access ID” und “Secret Key” abrufen . Der “Geheime Schlüssel” muss generiert werden und benötigt einige Minuten, um gültig zu sein. Wir müssen also eine Weile warten, bevor wir ihn verwenden können.

Mit diesen beiden Werten erhalten wir kostenlosen Zugriff auf die MOZ-API (Mozscape). Die Funktionalität beschränkt sich jedoch auf das Abrufen einiger Parameter, reicht jedoch aus, um die DA- und PA-Werte abzurufen. Unter dem Link http://apiwiki.moz.com/url-metrics#cols sehen wir eine vollständige Liste, welche Werte wir mit der kostenlosen API und welche mit der Zahlungs-API erhalten können

Der vorherige Link hilft uns auch dabei, die „Bit-Flags“ zu erhalten, die nichts anderes als eine Zahl sind, mit der eine Metrik identifiziert wird. Beispielsweise ist das Flag-Bit der DA-Metrik 68719476736 und das Flag-Bit der PA-Metrik 34359738368 .

Verwenden Sie MOZscape API von MOZ mit C #

Sobald wir alle erforderlichen Daten haben, über die wir gesprochen haben, fahren wir mit dem Programmierabschnitt in C # fort. Das HTTP-Protokoll mit der GET-Methode wird verwendet, um die Anforderung an die Mozscape-API zu richten .

See also  Warum aktualisiert mein Smartphone nicht seine Android-Version?

Ein Beispiel für die Anforderungs-URL wäre:

 http://lsapi.seomoz.com/linkscape/url-metrics/www.vozidea.com?Cols=68719476736&AccessID=member-ace8g6ka76&Expires=1389795965&Signature=AJzro%2YUw%2Fc6J8xOP35cVRmJVxMc%3D 

Wir analysieren nacheinander alle Elemente der URL und sprechen dann nacheinander über diejenigen, die eine Erklärung benötigen:

  • Hostname und Ressource : http://lsapi.seomoz.com/linkscape /
  • Definition des url-metrics : url-metrics
  • URL unter Studie : www.vozidea.com
  • Metrik / en, die wir erhalten möchten : Cols= 68719476736
  • Zeitpunkt und genaues Datum, an dem unsere API-Anfrage abläuft : Expires=1389795965
  • Authentifizierungssignatur : Signature=AJzro%2YUw%2Fc6J8xOP35cVRmJVxMc%3D

Hostname und Ressource

Was den Hostnamen betrifft, nur um zu sagen, dass wir sowohl die HTTP-Version als auch die HTTPS-Version verwenden können, werde ich die HTTP-Version im Code verwenden.

Metriksatzdefinition

Für den Satz von Metriken werden wir “URL-Metriken” verwenden , aber es gibt noch mehr und Sie können sie unter dem folgenden Link finden: http://apiwiki.moz.com/categories/api-reference

URL im Studium

Es ist die URL, die wir analysieren möchten, im Beispiel die Domain www.vozidea.com .

Metric / s wollen wir bekommen

In diesem Parameter hören wir etwas mehr auf, da es wichtig ist. Dies ist der Cols Parameter im Beispiel, dessen Wert eine Zahl ist, die aus einem Flag-Bit besteht (in diesem Fall ist es das Flag-Bit des DA).

Der Punkt ist, dass ich auch die PA erhalten möchte, so dass die API die DA und die PA zurückgibt. Ich muss dem Parameter Cols den Wert der Summe der Bit-Flags von DA (dessen Flag-Bit 68719476736 ist) und PA (dessen Bit) geben flag ist 34359738368) und wäre: Cols=103079215104

Wenn ich mehr Metriken benötigen würde, würde ich ihre Flagbitwerte hinzufügen und den Wert der Summe dem Cols Parameter geben.

Zeitpunkt und genaues Datum, an dem unsere API-Anfrage abläuft

Dies ist der Expires Parameter, dessen Wert wie folgt lautet: Gesamtanzahl der Sekunden vom UNIX-Ursprungsdatum (1. Januar 1970) bis zur aktuellen Zeit + 300 Sekunden.

See also  Sie können jetzt die Gesichtserkennung in OnePlus 3 und 3T verwenden

Dieser Wert gibt ein zukünftiges Datum und eine zukünftige Uhrzeit an, insbesondere 300 Sekunden (5 Minuten) von der Zukunft entfernt. Mit anderen Worten, jede Anfrage, die wir an die API stellen, läuft nach 5 Minuten ab .

Ich habe den Wert 5 Minuten festgelegt, da ich ihn in der API-Dokumentation empfohlen habe. Wenn Sie jedoch einen höheren Wert benötigen, können Sie ihn im Code ändern. Um den Expires Parameter im Code in C # zu erstellen, wird die CreateExpiryTimestamp() -Funktion CreateExpiryTimestamp() .

Authentifizierungssignatur

Es ist der komplexeste Parameter und besteht aus einer Echtheitssignatur. Hiermit wird der Mozscape-API bestätigt, dass wir zur Verwendung der API berechtigt sind .

Zum Signieren der Anforderung verwenden wir den Signature Parameter, der aus dem Codieren einer Nachricht mit dem HMAC-SHA1 Algorithmus besteht. Diese Nachricht besteht aus der Access ID , dem Zeilenumbruch (dargestellt durch das Zeichenpaar n ) und dem Parameter Expires . Wir codieren diese Nachricht mit dem HMAC-SHA1 Algorithmus und verwenden den Secret Key als Codierungsschlüssel.

Stellen Sie die HTTP-Anforderung an die Mozscape-API

Denken Sie daran, dass alle Daten, die Teil der URL der Anforderung sind, wenn der Wert eines Parameters Sonderzeichen enthält , mit URLEncode codiert werden müssen , sodass die Funktion Uri.EscapeDataString() im Code in C # verwendet wird.

Schließlich stellen wir die HTTP-Anforderung an die URL, die wir mit den vorherigen Parametern erstellt haben, und die API gibt eine Antwort im JSON-Format zurück, die beispielsweise Folgendes sein kann:
{"pda":14.931787896224872,"upa":25.93463975359981}

In dieser Antwort sind “pda” und “upa” die Werte von DA und PA von www.vozidea.com.

Und wir haben alles bereit, um das Projekt in C # herunterzuladen und zu experimentieren.

See also  Was ist CefSharp, wofür ist es und Lösungen für mögliche Fehler

Wenn Ihnen der Artikel zur Verwendung der Mozscape-API von MOZ mit C # gefallen hat oder Sie Zweifel haben, können Sie ihn gerne kommentieren.

administrator

Leave a Reply

Your email address will not be published. Required fields are marked *