[PYTHON] 1 Klicken Sie hier, um eine Executive-Schaltfläche zu werden

Im kommenden Jahr liegt es vielleicht am Winter oder am Busen ... In dieser Saison, in der ich etwas Graues fühle, habe ich eine App erstellt, die wie ein schwaches Match aussieht. Es ist eine Anwendung, mit der Sie mit 1 Klick Offizier eines börsennotierten Unternehmens werden können! Sein Name ist "Executive Button". Klicken Sie auf das Bild unten, um es zu starten.

** Der Executive-Button ist unglaublich! **

Auf Knopfdruck erhalten Sie eine Vergütung für Führungskräfte für börsennotierte Unternehmen! !!

** Dies ist der Executive-Button! **

Ich kann es nicht wirklich verstehen! !!

Die Implementierung ist hier.

https://github.com/icoxfog417/executive_button

Vergütung von börsennotierten Unternehmen

Ab 2019 werden Vergütungen für Führungskräfte usw. im Rahmen der Offenlegung der Unternehmensführung offengelegt. Insbesondere wurde es in Offenlegungsdokumenten beschrieben, die für börsennotierte Unternehmen wie Wertpapierberichte erforderlich sind.

Es ist schwer aufzudecken, aber unsere Vergütung für Führungskräfte lautet wie folgt.

image.png

Es sind ungefähr 40 Millionen pro Person. Hmm, ganz ... (mehrdeutiges Lächeln). Dieser Wert kann ohne die Nachteile des Lesens aus PDF erhalten werden. Da das Offenlegungsdokument in einem Format geschrieben ist, das XML erweitert, das als XBRL bezeichnet wird, ist es möglich, Daten durch Ausführen einer XML-Analyse abzurufen. Die verwendeten Tags werden jedes Jahr überarbeitet und jedes Mal wie folgt veröffentlicht.

(Über die Veröffentlichung der EDINET-Taxonomie 2019)

Der Gesamtbetrag der Vergütung für Führungskräfte kann mit dem Tag "TotalAmountOfRemunerationEtcPaidByGroupRemunerationEtcPaidByGroupToEachDirectorOrOtherOfficer" im Namespace "jpcrp_cor" (long) abgerufen werden. Der Namensraum wird für jedes Offenlegungsdokument festgelegt ... Es wird lange dauern, wenn Sie sprechen. Wenn Sie also interessiert sind hier % E5% 8B% 99% E5% 88% 86% E6% 9E% 90% E3% 81% AB% E6% AC% A0% E3% 81% 8B% E3% 81% 9B% E3% 81% AA% E3 Wir verweisen auf% 81% 84-xbrl% E3% 82% 92% E7% 90% 86% E8% A7% A3% E3% 81% 99% E3% 82% 8B-part1-d4165fe0e84a).

image.png

Diesmal ist der Datensatz "CoARiJ", der die kürzlich veröffentlichten Dokumente wie Wertpapierberichte und Finanzzahlen zusammenfasst Benutzen.

Da CoARiJ Textinformationen und numerische Informationen als Satz aufzeichnet: "Ich sage gute Dinge, aber spiegeln sie sich in Managementindikatoren wider?" Oder "Wenn die numerischen Werte schlecht sind, sind die Umweltaktivitäten (Berichte) bescheiden. Es ist möglich, sowohl Text- als auch Zahlenwerte wie "Ist es nicht?" Dieses Mal ziehe ich die Vergütungsdaten für Führungskräfte im Text heraus und zeige sie zufällig in der App an.

Anwendungskonfiguration

Die Anwendungs- und Infrastrukturkonfiguration für diese Zeit ist wie folgt.

image.png

Es gibt einen Grund, warum der Proxy zwischen Entwicklung und Produktion unterschiedlich ist.

  1. Traefik benötigt Zugriff auf das Docker-Dock des Hosts, aber Fargate kann keine Volume-Bindung durchführen -mounts.html).
  2. Fargate kann keine "Links" verwenden, daher kann Nginx den Hostnamen nicht auflösen. Stattdessen können Sie mit localhost auf andere Container zugreifen.
  3. Selbst wenn Sie Nginx sowohl für die Entwicklung als auch für die Produktion verwenden, müssen Sie den Wert von nginx.conf ändern (im Falle der Entwicklung können Sie nicht mit localhost darauf zugreifen). Ich habe Traefik verwendet, das einfach einzurichten ist, da es sowieso doppelt verwaltet wird.

Ich frage mich, ob ich einen Proxy setzen soll, wenn es so schwierig ist, aber es gibt einen Grund, einen Proxy zu setzen. Wenn Sie die Container im Nuxt / Backend trennen möchten, benötigen Sie einen Proxy für den serverseitigen und clientseitigen Zugriff auf Nuxt (weitere Informationen finden Sie hier (https://stackoverflow.com/questions/55090038). / get-http-api1337-games-neterr-name-nicht-aufgelöst-für-nuxt-js-seiten-mit-asy aufgelöst)). Auf der Serverseite können die Proxy-Einstellungen von Nuxt verwendet werden.

nuxt.config.js


  modules: [
    // Doc: https://axios.nuxtjs.org/usage
    "@nuxtjs/axios",
    "@nuxtjs/proxy"
  ],
  /*
   ** Axios module configuration
   ** See https://axios.nuxtjs.org/options
   */
  axios: {
    prefix: "/api",
    proxy: true
  },
  proxy: {
    "/api/": process.env.BACKEND_URL || "http://localhost:8000/"
  },

JavaScript (Zugriff von der Clientseite) nach dem Rendern verfügt jedoch nicht über eine Proxy-Einstellung. Daher kann der Hostname nicht aufgelöst werden oder es tritt ein domänenübergreifender Fehler auf. Um den Zugriff von der Client-Seite zum Back-End ordnungsgemäß zu übertragen, muss ein Reverse-Proxy zum Weiterleiten platziert werden.

Traefik ist für diese Reverse-Proxy-Rolle gut geeignet. Sie können den Proxy einfach festlegen, indem Sie das Label in Traefiks 2.0-Serie Docker-Compose festlegen. Das Folgende ist ein Zitat aus dem offiziellen Tutorial, aber setzen Sie einfach "Host" mit "Labels" in den "Whoami" -Container und es leitet die Anfrage an diesen Host weiter.

Großer Komfort! Wie oben erwähnt, funktioniert es jedoch nicht mit Fargate, das keine Bindung verwenden kann, da es sich auf die "docker.sock" des Hosts bezieht. Dies kann durch Umschalten auf EC2 unterstützt werden. Beachten Sie jedoch, dass derzeit die Richtlinie "Amazon EC2ContainerService für EC2Role" erforderlich ist ([Referenz](https://stackoverflow.com/questions/36523282/aws-ecs-error-when- "). Running-Task-No-Container-Instanzen-wurden-in-Ihrem-Clust gefunden)).

Bitte beachten Sie, dass sich die öffentliche IP von Fargate bei jeder Bereitstellung ändert. Es wird schwierig sein, also werde ich die Anfrage mit dem Load Balancer vor mir weiterleiten (ich leite sie einfach weiter ...). Einzelheiten zur Herstellung eines Straßenausgleichers finden Sie unten.

Run your container on AWS Fargate

Geben Sie bei der Registrierung von "ecs-cli" mit "--target-group-arn" (Zielgruppe) anstelle von "--load-balancer-name" (Load Balancer) an. Wenn im Load Balancer angegeben, heißt es "Klassische Load Balancer werden von Fargate nicht unterstützt".

 ecs-cli compose service create \
       --target-group-arn "$ARN" \
       --container-name service_name_on_docker_compose \
       --container-port exposed_port

Die endgültige Bereitstellung mit GitHub Action finden Sie unter Repository (https://github.com/icoxfog417/executive_button/blob/master/.github/workflows/dockerimage.yml).

Offiziersvergütungsranking

Sagen Sie mir einfach, welche Unternehmen viel bekommen! Ich habe die Top 10 für diejenigen gemacht, die sagen. Von allen Unternehmen von 1944, für die eine Vergütung verfügbar war, haben die folgenden Unternehmen die höchste Pro-Kopf-Vergütung.

image.png

Wenn Sie 10 Millionen Jahre bei Tokyo Electron Co., Ltd. arbeiten, können Sie 5.000 Billionen Yen erhalten! (Ist die Berechnung korrekt?). Alle Unternehmensdaten befinden sich im Repository.

Recommended Posts

1 Klicken Sie hier, um eine Executive-Schaltfläche zu werden
Ich habe versucht, mit OpenCV Ann Man zu werden
Einführung in Private TensorFlow
Eine Einführung in das maschinelle Lernen
AtCoder Hellblau werden
Eine Einführung in die Python-Programmierung
Einführung in die Bayes'sche Optimierung
Verkleide das Gras auf GitHub und versuche Ingenieur zu werden.