stravaFollowers

< stravaFollowers >
Ich habe Follower Checker für Strava entwickelt.
https://github.com/mecrazy/stravaFollowers

< Strava hat solche Funktionen nicht >
Die Leute folgen mir, aber jemand faltet mich sofort ab. Aber es ist nicht leicht zu finden, wer mich nicht erreicht. Also habe ich dieses Bookmarklet entwickelt, um Leute zu finden, die mir nicht folgen. Verwenden Sie es auf PC wie Windows, OSX oder Linux. Es wird nicht auf Smartphones wie Android oder iOS getestet.

Ich baute PhantomJS 2.1.1 für Raspberry Pi

Ich baute PhantomJS 2.1.1 für Raspberry Pi. Es kann auch auf jeder armhf Architektur Maschinen laufen.

Ich verwendete Debian auf ARM VPS auf https://www.scaleway.com/ und folgen Sie dieser Seite, es zu bauen.

Bitte laden Sie von https://github.com/mecrazy/phantomjs-binaries.
( Nach meiner Pull-Anforderung erlaubt, werde ich den Link in diesem Blog “https://github.com/avaynshtok/phantomjs-binaries” bearbeiten. )

Ich benutze Raspberry Pi als Testmaschine für alle Server-Anwendungen wie Web-Scraping. Aber es gab keine PhantomJS Binärdateien für armhf Architektur auf dem Netz. Also baute ich es. Bitte verwenden Sie diesen binären, wenn Sie möchten. Aber ich kann keine Probleme und Bugs nicht kümmern, wenn Sie es verwenden.

< Was ist "PhantomJS"? >
PhantomJS ist ein Web-Tool Schaben mit JavaScript-API. Es kann Web-Seiten als PDF, PNG oder irgendeine Art von Bild-Datei zu erfassen. Wenn Sie mehr über PhantomJS wissen wollen, klicken Sie bitte auf http://phantomjs.org/.

Erste Version von Pibow zero passen Raspberry Pi Zero V1.3 nicht !!!

Wenn Sie vorhaben, Pibow Fall für Raspberry Pi Zero zu kaufen, müssen Sie jede Version überprüfen.

Ich kaufte Raspberry Pi Zero
rpi_zero
und Pibow für sie
pibow_and_rpi_zero

Aber Fall nicht passt!!!
pibow_not_fit

Dies ist ein verdammtes Teil von Raspberry Pi Zero!!!
rpi_zero_connector

Ich fand seltsame Saiten auf Raspberry Pi Zero.
rpi_zero_version
Was ist “V1.3”!!??

OH MEIN GOTT!!

Als ich mit “pibow zero 1.3” googeln, fand ich die Antwort.
pibow_1.3

Ich bestellte diese ein…..

Hey everyone, bitte lass mich nicht folgen…..

Empfehlungen von Webmin für Debian-Benutzer

< Was ist “Webmin”? >
“Webmin” ist ein Konfigurations-Tool mit Web-basierten Benutzeroberfläche in Perl geschrieben. Es kann auf Linux / UNIX / Windows / OSX laufen. Bei der Installation von Debian auf meinem Computer, ich “Webmin” installieren. Grundsätzlich habe ich es verwenden, um Konfigurationsdateien zu bearbeiten, da brauche ich nicht zu erinnern, wo es Konfigurationsdateien. “Webmin” kann Starten und Stoppen von Leistungen zu kontrollieren. “Webmin” hat so viele komfortable Funktionen. Aber es ist zu schwer für mich alles über sie zu erklären. Wenn Sie über “Webmin” mehr wissen wollen, überprüfen Sie bitte Webmin – Wikipedia und http://www.webmin.com/.

< Installation auf Debian >
Bitte überprüfen neueste Version von Webmin auf http://www.webmin.com/. Bitte ersetzen Sie den roten URL auf die neueste ein, wenn Sie auf der offiziellen Website zu überprüfen. Führen Sie die folgenden Befehle als root Webmin installieren.

root@myhost:~# cd /tmp
root@myhost:/tmp# wget http://prdownloads.sourceforge.net/webadmin/webmin_1.690_all.deb
root@myhost:/tmp# dpkg -i webmin_1.690_all.deb
root@myhost:/tmp# apt-get -f install

Nachdem der Befehl “dpkg -i webmin_1.690_all.deb” apt zeigen Ihnen alle Warnungen. Danach führen Sie bitte “apt-get -f install“, um die erforderliche Software für Webmin installieren.

< Aus Sicherheitsgründen >
Durch die Standardkonfiguration können Webmin nur aus lokalen Netzwerk zugegriffen werden. Ich habe es nie verändert, wegen der Sicherheit. Ich benutze immer SSH-Port übertragen oder jede Art von VPN zu Webmin aus dem Internet zu verwenden. Sie brauchen nicht damit zu Webmin direkt aus dem Internet zugegriffen werden.

< SSH-Port-Übertragung >
Wenn Ihr Benutzername ist “abcd” und Domäne “example.com“, SSH-Login mit Transfer zum Hafen für Webmin ist ein Kommandozeilen unten.

$ ssh -L 10000:localhost:10000 abcd@example.com

Diese Befehlszeile ist für Linux / UNIX / OSX. Sie können auch die IP-Adresse zu verwenden, anstatt Domäne.

< Melden Sie sich bei Webmin >
Verwenden Sie einen beliebigen Browser auf “https://localhost:10000/” zugreifen. Sie werden nicht vertrauenswürdige Nachricht wie unten zu sehen.
untrusted_001_de
Es ist ein Beispiel von Firefox. Bitte drücken Sie “Ausnahmen hinzufügen“, wenn Sie Firefox verwenden.
untrusted_002_de
Zum ersten Mal, müssen Sie als root anmelden. Wenn Sie nicht zu nutzen, um root Webmin anmelden möchten, können Sie für jeden Benutzer Webmin hinzufügen.
webmin_login

< Welche Sprache verwenden Sie? >
Standard-Sprache für webmin ist Englisch. Wenn Sie die globale Spracheinstellung ändern möchten, überprüfen Sie bitte die Navigation und die Abbildung unten.
[ Webmin ] – [ Webmin Configuration ] – [ Language ] ( Englisch )
webmin_change_language_001
[ Webmin ] – [ Webmin-Konfiguration ] – [ Sprache ] ( Deutsch )
webmin_change_language_001_de
Sie können die Standardsprache und Zeichencode für Webmin Benutzeroberfläche wählen von der obigen Funktion. Wenn Sie persönliche Sprache oder das Thema wechseln wollen, überprüfen Sie bitte die Navigation und die Abbildung unten.
[ Webmin ] – [ Change Language and Theme ] ( Englisch )
webmin_change_language_002
[ Webmin ] – [ Ändern der Sprache und des Designs ] ( Deutsch )
webmin_change_language_002_de

< Webmin thema >
Ich möchte erklären, wie webmin-benutzer hinzufügen, aber bevor Sie webmin-benutzer, muss ich über meine webmin thema zu erklären.
[ Webmin ] – [ Webmin-Konfiguration ] – [ Webmin-Themes ]
Sie können Themen für Webmin UI wählen. Ich benutze immer “MSC.Linux Theme“. Bitte wählen Sie ein Thema, das Sie verwenden möchten. Aber während meiner folgenden Verfahren zu diesem Beitrag, ist es leicht zu folgen mit “MSC.Linux Theme“.
webmin_theme_de

< System-Benutzer hinzufügen >
Ich habe immer System Benutzer hinzufügen, bevor Sie Webmin-Benutzer. Weil ich UNIX-Login für Webmin. Sie können Benutzer für Ihr Betriebssystem unter der unten Navigation hinzufügen. Ich benutze diese Funktion anstelle von Befehl “adduser”.
[ System ] – [ Benutzer und Gruppen ] – [ Neuen Benutzer erstellen ]
Ich benutze im Grunde Standardeinstellungen für neue Benutzer. Ich Kennwort nur ändern.
webmin_users_de

< In Webmin Benutzer >
Sie können Benutzer für Webmin unter der unten Navigation hinzufügen. Sie müssen Funktionen Webmin wählen, damit der Benutzer kontrollieren kann. Ich UNIX-Authentifizierung verwenden Kennwort immer.
[ Webmin ] – [ Webmin-Benutzer ] – [ Einen neuen Webminbenutzer anlegen ]
Nachdem ich Webmin Benutzer hinzuzufügen, habe ich immer wieder anmelden Webmin auf den neuen Benutzer.
webmin_add_webminuser_de
Sie können das Modul Liste wie unten.
webmin_select_modules_de
Wenn Sie alles wie ein Administrator steuern möchten, klicken Sie bitte auf “Alles auswählen”, um alle Funktionen zu wählen.

< Steuerung und Service >
[ System ] – [ System-Start und -Stop ]
Dieses Bild zeigt die Funktionen auf der Unterseite der Seite.
webmin_control_services_de

< Über Webmin-Module >
Wenn ich freie Zeit werde ich diesen Beitrag aktualisieren oder neuen Beitrag schreiben über einige Module für Webmin.

Neue Version von Google Spreadsheets als JSONP

< Warnung >
Ich empfehle Ihnen, zusätzliche Google-Konto nur für die Öffentlichkeit. Denn wenn Sie mein Verfahren zu folgen, wird Ihr Google Mail-Adresse auf öffentlichen JSONP Datei sein.

< Google Spreadsheets >
Alte Version von Google Spreadsheets können Tabellen als XML, JSON und eine Art von Format zu teilen. Ich dachte, neue Version nicht über eine solche Sharing-Funktionen. Aber ich fand das gute Lösung für die neue Version von Google Spreadsheets auf der Antwort auf die Frage auf Stackoverflow.
Unable to publish specific cells in new Google Spreadsheets – StackOverflow ( Englisch )
Laut der Seite oben, ist dies eine Art von API alte API. Niemand ist sicher, wenn es nicht mehr. Ist mir egal, diese Situation. Aber wenn man nicht, wie die Situation nicht, weiß ich nicht empfehlen Ihnen, dieses API verwenden.

< URL-Format >

https://spreadsheets.google.com/feeds/cells/[ Ihr Tabellenkalkulationsschlüssel ]/od6/public/values?min-row=[ starten Zeilennummer ]&max-row=[ Ende Zeilennummer ]&min-col=[ starten Spaltennummer ]&max-col=[ Ende Spaltennummer ]&alt=json-in-script&callback=[ Callback-Funktion Namen ]

< Wie benutzt man es? >
JSONP Format ist einfach, in JavaScript zu verwenden. Niemand braucht Parser. Aber ich möchte URL-Generator verwenden die API noch nützlicher zu machen. Also entwickelte ich ein Skript, das von Paging-Parameter, um URL-Parameter wandelt folgenden Google-Syntax.

< jQuery-Plugin >
Ich entwickelte dieses jQuery-Plugin namens “generateGoogleJsonpUri”.
generateGoogleJsonpUri – github
Ich habe Beispielseite wie ein Blog Rahmen, um mein Plugin zu testen.
https://mecrazy.net/sample/generateGoogleJsonpUri/
Wenn Sie möchten, kopieren Sie bitte die Quelle als Beispiel.

< Verwendung – Gießerei >
Casting Syntax ist

var test = $.genJsonpGDU("<Your-Tabellenkalkulation-key-hier>");

oder

var test = $.genJsonpGDU({key:"<Your-Tabellenkalkulation-key-hier>"});

.

Sie können einen Schlüssel in der URL Ihrer Tabelle zu finden. Es ist meine Probe unten.
spreadsheet_sample_001
Auf diesem Bild ist URL “https://docs.google.com/spreadsheets/d/1IG2QEOXehU01b6DoMQi19CvFpm2EZJOUM2y4lqXKduw/edit#gid=0”. Der Schlüssel für meine Tabelle ist “1IG2QEOXehU01b6DoMQi19CvFpm2EZJOUM2y4lqXKduw”. Bitte überprüfen Sie die URL Ihrer Tabelle, um Ihre Schlüssel zu erhalten.

< Verwendung – Pager konfigurieren >

test.pager({
  startRow:2,//Zeilennummer, anfangen (erforderlich)
  minCol:2,//Spaltennummer, anfangen (erforderlich)
  maxCol:7,//Spaltennummer, um am Ende immer (erforderlich)
  recsPerPage:5//Datensätze in einer Seite (fakultativ)
});

Bitte vergleichen Sie die Syntax oben und unten stehende Tabelle. Wenn Sie die Tabelle unten sehen, bitte vorstellen, Excel oder jede Art von Tabellenkalkulation. Syntax oben bedeutet, dass der Bereich der ersten Seite ist rosa-Bereich, 2. Seite ist grünen Bereich. “B2:G2” ist ein erster Rekord. “B6:G6” ist eine fünfte Rekord.

A1 B1 C1 D1 E1 F1 G1 H1
A2 B2 C2 D2 E2 F2 G2 H2
A3 B3 C3 D3 E3 F3 G3 H3
A4 B4 C4 D4 E4 F4 G4 H4
A5 B5 C5 D5 E5 F5 G5 H5
A6 B6 C6 D6 E6 F6 G6 H6
A7 B7 C7 D7 E7 F7 G7 H7
A8 B8 C8 D8 E8 F8 G8 H8
A9 B9 C9 D9 E9 F9 G9 H9
A10 B10 C10 D10 E10 F10 G10 H10
A11 B11 C11 D11 E11 F11 G11 H11
A12 B12 C12 D12 E12 F12 G12 H12
A13 B13 C13 D13 E13 F13 G13 H13

< Verwendung – bekommen URL der Seite >
Es ist ein Beispiel zur ersten Seite URL zu bekommen.

var pageUrl = test.page(1);

( “test.pager(Objekt)” wird vor der Ausführung dieser Funktion erforderlich. )

< Verwendung – Ajax ausführen >
Argumente für “test.ajax” sind dieselben wie “http://api.jquery.com/jQuery.ajax/“.

test.ajax({
  url:test.page(1),
  success:function(json){
    console.log(json);
  }
});

Wenn Sie wissen möchten aktuelle Seite vorherige Seite oder nächste Seite möchten, nutzen Sie bitte “test.get()” in der Funktion success und Kontrollparameter .

test.ajax({
  url:test.page(1),
  success:function(json){
    console.log(json);
    var param = test.get();
    if(param.pager.prev){
      console.log('Diese Seite hat vorigen Seite.');
    }else{
      console.log('Diese Seite hat keine vorherige Seite.');
    }
    if(param.pager.next){
      console.log('Diese Seite hat nächsten Seite.');
    }else{
      console.log('Diese Seite hat keine nächsten Seite.');
    }
  }
});

< Verwendung – JSON konvertiert, um 2D-Array >
“test.jsonToArr” wandelt von JSON-Format von Google, um 2D-Array.

test.ajax({
  url:test.page(1),
  success:function(json){
    var arr2d = test.jsonToArr(json);
    console.log(arr2d);
  }
});

< Verwendung – Variable Cache >
Wenn Sie das Paging-Cache ermöglichen mit Hilfe von JavaScript-Variablen, folgen Sie bitte der nachfolgenden Syntax.

test.set({cache:true});

Dieses Argument schaltet auf Cache für Paging verwenden. Es prüft Update Zeitpunkt JSONP alle 20 Minuten standardmäßig. Wenn das Datum geändert, wird es automatisch klar Cache. Wenn Sie das Intervall, um das Datum zu überprüfen ändern möchten. Sie können die Syntax wie unten statt der oben genannten Syntax verwenden.

test.set({
  cache:true,
  cacheInterval:{
    sec:0,min:50,hour:0
  }
});

< Nachwort >
Es gibt grundlegende Unterschiede zwischen neuen und alten Google Spreadsheets.

  neu alt
Maximale Zellen 2 Millionen Zellen 400,000 Zellen
Maximale Spalten unbegrenzt 256 Spalten pro Blatt

Ich denke, die neue Version ist unglaublich groß und kostenlose Datenbank. Ich möchte interessante Verwendungen der neuen Google Spreadsheets finden.