Dollarbeträge von DoD Contract Awards beziehen

293
jmabs

Ich gehe durch Pressemitteilungen des US-Verteidigungsministeriums ( hier ) und suche nach Dollarbeträgen von mehr als 500 Millionen US-Dollar. Jedes Dokument umfasst zwischen 1.000 und 15.000 Wörter, wobei die Beträge in Dollar in den normalen Diskussionstext passen. Es gibt ungefähr 2.500 Dokumente, die ich überprüfen möchte. Meine Trefferquote (manuell) liegt bisher bei 1 zu 8, also finde ich für jede von mir durchsuchte 8 Dokumente einen mit einem Dollarbetrag, nach dem ich suche. Sobald ich einen Vertrag im Wert von etwa 546 Millionen Dollar gefunden habe, vermerke ich das Unternehmen, das Datum und eine kurze Beschreibung.

Meine Frage ist also: Wie kann ich das Finden von Dokumenten mit Nummern> 500.000.000 automatisieren?

Hier ist ein Beispiel für einen Absatz

General Dynamics Electric Boat Corp., Groton, Connecticut, erhält einen Vertrag über Kosten von 234.229.426 US -Dollar für Design-Agent, Planungsbahnhof, Engineering und technischen Support für aktive Atom-U-Boote. Die Bemühungen [...] Dieser Vertrag umfasst Optionen, die bei Ausübung den kumulierten Wert dieses Vertrags auf 1.537.500.654 USD bringen würden. Die Arbeiten werden in Groton, Connecticut (73 Prozent) durchgeführt. Bangor, Washington (9 Prozent); Norfolk, Virginia (6 Prozent); Newport, Rhode Island (4 Prozent); Quonset, Rhode Island (3 Prozent); Kings Bay, Georgia (3 Prozent); und Pearl Harbor, Hawaii (2 Prozent), und wird voraussichtlich am 30. September 2015 abgeschlossen sein. Sonstige Beschaffung für das Geschäftsjahr 2014 (Navy); Umbau des Schiffbaus 2011, 2012, 2013 und 2014 (Navy); Forschung, Entwicklung, Test und Bewertung im Geschäftsjahr 2014; Die Betriebs- und Instandhaltungsfinanzierung (Navy) des Geschäftsjahres 2014 in Höhe von 20.333.452 USD wird zum Zeitpunkt der Vergabe verpflichtend und die Auftragsfinanzierung beträgt 1.520.650 USDendet am Ende des Geschäftsjahres. Dieser Auftrag wurde nicht gemäß FAR 6.302-1 (a) (2) (iii) wettbewerbsfähig abgeschlossen - nur eine verantwortliche Quelle und keine anderen Lieferungen oder Dienstleistungen werden den Anforderungen der Agentur genügen. Das Naval Sea Systems Command, Washington, District of Columbia, ist die vertragliche Tätigkeit (N00024-14-C-2104).

Ich denke, es sollte möglich sein, daraus etwas zu machen

234.229.426

1.537.500.654

20.333.452 $

1.520.650 USD

Was ich leicht sehen könnte, um zu sehen, ob ich zurückgehen und das Dokument lesen sollte. Es wäre noch besser, wenn ich nur die Nummer 1.537.500.654 sehen könnte.

Ich habe also wirklich keine Programmierkenntnisse und hoffte, dass dies nicht nötig wäre. Ich brauche es nicht, um perfekt zu sein. Ich kann Dinge kopieren und einfügen, aber ich möchte das irgendwie erleichtern. Ich habe wirklich keine Ahnung, wo ich anfangen soll und welche Anwendungen für meine Notlage relevant sein könnten. Ich habe Zugang zu Macs und PCs. Jeder Rat, den Sie geben können, wird geschätzt.

1
Können Sie sich darauf verlassen, dass die Nummerierung in einem einzigen Format vollständig ausgeschrieben ist (1.537.500.654 USD), oder müssen Sie auch andere Varianten finden können (500 Millionen Dollar, 74 Millionen Dollar, eine Auszeichnung in Höhe von sechzig Millionen)? Jason Aller vor 8 Jahren 0
Wenn Sie alle Verträge in Textdateien (über die Druckansicht der Website) oder sogar in Word-Dokumente exportieren, sollten reguläre Ausdrücke die Zahlen für Sie finden können. Vermutlich wäre auch ein direktes Scraping der Site möglich. Karan vor 8 Jahren 0
Sie sind extrem konsistent in ihrem $ xxx, xxx, xxx Format, Jason. Also muss ich nur dieses bestimmte Format finden. (Im Einzelnen würde ich nach $ xxx, xxx, xxx und $ x, xxx, xxx, xxx und $ xx, xxx, xxx, xxx suchen). Vor und nach ist immer ein Leerzeichen. Karan, danke für die Antwort, aber ich würde nicht wissen, wo ich mit "regulären Ausdrücken" beginnen sollte. jmabs vor 8 Jahren 0
Das machten wir, aber wahrscheinlich keine SU-Frage. Möglicherweise möchten Sie weitere Informationen zu den verfügbaren Ressourcen bereitstellen. Wenn es sich um ein Linux-basiertes System handelt, können Sie ein Skript schreiben, um (a) WGET oder CURL zu verwenden, um alle Dokumente zu spinnen, und dann etwas (PHP, Bash, Python) nach den entsprechenden Token in jeder Datei suchen und dann eine Übersichtsliste drucken. Natürlich geht man davon aus, dass Sie Linux verwenden. davidgo vor 8 Jahren 0
Ich kann ssh in eine Red Hat Enterprise-Distribution von meinem Mac aufnehmen, wenn das zählt. Aber wie ich geschrieben habe, konnte ich kein Hallo-Weltskript schreiben. Ist es so einfach, etwas zu schreiben, um jemanden um Hilfe zu bitten? Wo soll ich fragen Vielen Dank! (Ich habe mich sogar gefragt, ob etwas für Excel geschrieben werden könnte, aber das könnte naiv sein.) jmabs vor 8 Jahren 0

1 Antwort auf die Frage

2
pyrocrasty

Erstellen Sie ein neues Lesezeichen, und fügen Sie den folgenden Code in das Feld location ein:

javascript:%20(function()%20alert(s);}});})(); 

Speichern Sie es unter einem Namen wie "Show dollar values". Dies ist ein Bookmarklet. Klicken Sie auf einer Webseite darauf, und es wird eine Warnmeldung mit einer Liste aller Dollarwerte angezeigt, die auf der Seite vorkommen.

Der obige Code basiert auf JQuery. Wenn die Webseite, auf der Sie ihn verwenden, JQuery nicht bereits lädt, müssen Sie diese Append-JQuery verwenden zuerst Lesezeichen- .

Anpassen des Spiels

Es ist ziemlich einfach, die Werte zu ändern, die das Bookmarklet anzeigt. Der nachstehende Code wird beispielsweise so geändert, dass nur Beträge mit neun Ziffern oder mehr angezeigt werden:

javascript:%20(function()(\d[,]?)+/g%20;%20while%20(m=d.exec(result))%20%20alert(s);}});})(); 

Wenn Sie den Code in diesem Code finden und durch eine andere Zahl ersetzen, beispielsweise N, ändern Sie die Anzahl der Stellen für die Anzahl der Stellen N + 1 .

Wenn Sie dieses Bookmarklet für eine allgemeinere Verwendung anpassen möchten, müssen Sie nach "regulären Javascript-Ausdrücken" suchen, um die erforderliche Syntax zu lernen. Dieser Teil ( /[$](\d[,]?)+/g) des Codes steuert den Abgleich. Wenn Sie den Teil zwischen /und /gändern, ändern Sie die Übereinstimmung des Bookmarklets.

Das ist großartig, danke Pyrokrastie! Nicht zu viel verlangen, aber ist es möglich, nur Werte von mehr als 500.000.000 $ zurückzugeben (oder vielleicht nur mehr als 100.000.000 $), indem Zeichenfolgen mit weniger als ... 234.678.012 $ (12 Zeichen) ausgefiltert werden? Vielen Dank (auch wenn jemand anderes dies findet, beachten Sie, dass dies in Firefox, aber nicht in Chrome oder Safari auf einem Mac funktioniert). jmabs vor 8 Jahren 0
Ich habe eine Version hinzugefügt, die 9-stellig oder mehr findet (habe das vergessen, bevor ich es gepostet habe). Die Bookmarklets funktionieren für mich unter FF und Chrome unter Linux. Nicht sicher, was unter OS X passiert. Sind Sie sicher, dass Sie beim Einfügen keinen Charakter verloren haben? pyrocrasty vor 8 Jahren 0
Das muss es gewesen sein, danke! jmabs vor 8 Jahren 0