Improve locations coords

merge-requests/30/head
Bob Mottram 2021-05-10 14:43:38 +01:00
parent 69fe94208e
commit 0011f1a40b
3 changed files with 79 additions and 65 deletions

View File

@ -348,23 +348,21 @@ ANKLAM, GERMANY:53.8325:13.6689
COTTBUS, GERMANY:51.8894:14.5317
KOETHEN, GERMANY:51.7211:11.9617
KAMENZ, GERMANY:51.2961:14.1289
BERLIN, GERMANY:52.38:13.5225
DRESDEN, GERMANY:51.1325:13.7669
BERLIN, GERMANY:52.5170365:13.3888599
DRESDEN, GERMANY:51.0493286:13.7381437
ERFURT, GERMANY:50.98:10.9581
FRANKFURT, GERMANY:50.0264:8.54306
FRANKFURT, GERMANY:50.1106444:8.6820917
MUENSTER/OSNABRUECK, GERMANY:52.1344:7.68472
HAMBURG, GERMANY:53.6303:9.98806
BERLIN, GERMANY:52.4728:13.4039
HAMBURG, GERMANY:53.550341:10.000654
COLOGNE, GERMANY:50.8658:7.1425
DUESSELDORF, GERMANY:51.2894:6.76667
MUNICH, GERMANY:48.3536:11.7858
NUERNBERG, GERMANY:49.4986:11.0781
LEIPZIG, GERMANY:51.4239:12.2361
MUNICH, GERMANY:48.1371079:11.5753822
NUERNBERG, GERMANY:49.453872:11.077298
LEIPZIG, GERMANY:51.3406321:12.3747329
SAARBRUECKEN, GERMANY:49.2144:7.10944
STUTTGART, GERMANY:48.6897:9.22194
BERLIN, GERMANY:52.5594:13.2875
HANNOVER, GERMANY:52.4608:9.685
BREMEN, GERMANY:53.0475:8.78667
STUTTGART, GERMANY:48.7784485:9.1800132
HANNOVER, GERMANY:52.3744779:9.7385532
BREMEN, GERMANY:53.0758196:8.8071646
EGELSBACH, GERMANY:49.9608:8.64361
HAHN, GERMANY:49.9497:7.26389
MANNHEIM, GERMANY:49.4725:8.51361
@ -373,7 +371,6 @@ WORMS, GERMANY:49.6064:8.36833
MAINZ, GERMANY:49.9689:8.1475
EISENACH, GERMANY:50.9928:10.4725
SIEGERLAND, GERMANY:50.7075:8.08194
HAMBURG, GERMANY:53.5353:9.83528
KIEL, GERMANY:54.3794:10.145
LUEBECK, GERMANY:53.8053:10.7192
AACHEN, GERMANY:50.8228:6.18722
@ -381,11 +378,11 @@ DAHLEMER BINZ, GERMANY:50.4058:6.52806
MEINERZHAGEN, GERMANY:51.0994:7.60194
ARNSBERG, GERMANY:51.4833:7.89917
KAMP, GERMANY:51.5303:6.53694
ESSEN, GERMANY:51.4014:6.93583
ESSEN, GERMANY:51.4582235:7.0158171
MOENCHENGLADBACH, GERMANY:51.2303:6.50444
PADERBORN, GERMANY:51.6142:8.61611
STADTLOHN, GERMANY:51.9958:6.84028
DORTMUND, GERMANY:51.5181:7.61222
DORTMUND, GERMANY:51.5142273:7.4652789
AUGSBURG, GERMANY:48.425:10.9317
BIBERACH, GERMANY:48.1108:9.76278
EGGENFELDEN, GERMANY:48.3961:12.7236
@ -436,8 +433,7 @@ TARTU-ULENURME, ESTONIA:58.3072:26.6903
ENONTEKIO, FINLAND:68.3625:23.4242
EURA, FINLAND:61.1161:22.2014
HALLI, FINLAND:61.8558:24.7864
HELSINKI, FINLAND:60.2544:25.0428
HELSINKI, FINLAND:60.32:24.9561
HELSINKI, FINLAND:60.23542123800722:24.927984421582043
HAMEENKYRO, FINLAND:61.6894:23.0736
HANKO, FINLAND:59.8486:23.0833
HYVINKAA, FINLAND:60.6544:24.8811
@ -483,17 +479,16 @@ VARKAUS, FINLAND:62.1711:27.8686
YLIVIESKA-RAUDASKYLA, FINLAND:64.0603:24.7158
BELFAST, NORTH IRELAND:54.6575:W6.21583
ENNISKILLEN, ENGLAND:54.3989:W7.65167
BELFAST, NORTH IRELAND:54.6181:W5.8725
LONDONDERRY, NORTH IRELAND:55.0428:W7.16111
BIRMINGHAM, ENGLAND:52.4536:W1.74778
COVENTRY, ENGLAND:52.3697:W1.47972
LEICESTER, ENGLAND:52.6078:W1.03194
LONDONDERRY, NORTH IRELAND:54.9978678:W7.3213056
BIRMINGHAM, ENGLAND:52.4796992:W1.9026911
COVENTRY, ENGLAND:52.4081812:W1.510477
LEICESTER, ENGLAND:52.6361398:W1.1330789
GOLOUCHESTERSHIRE, ENGLAND:51.8942:W2.16722
NOTTINGHAM, ENGLAND:52.92:W1.07917
NOTTINGHAM, ENGLAND:52.9534193:W1.1496461
HALFPENNY GREEN, ENGLAND:52.5175:W2.25972
PAILTON, UK:51.6681:W2.05694
TURWESTON, UK:52.0408:W1.09556
MANCHESTER, ENGLAND:53.3536:W2.27472
MANCHESTER, ENGLAND:53.4794892:W2.2451148
WOODFORT, ENGLAND:53.3381:W2.14889
SANDTOFT, UK:53.5597:W0.858333
CHIVENOR, ENGLAND:51.0869:W4.15028
@ -504,25 +499,20 @@ CULDROSE, ENGLAND:50.0858:W5.25556
ST. ATHAN, UK:51.4047:W3.43556
YEOVILTON, UK:51.0092:W2.63861
HAVERFORDWEST, ENGLAND:51.8331:W4.96111
CARDIFF, WALES:51.3967:W3.34333
SWANSEA, ENGLAND:51.6053:W4.06778
BRISTOL, ENGLAND:51.3825:W2.71889
LIVERPOOL, ENGLAND:53.3336:W2.84972
LONDON, ENGLAND:51.8744:W0.368333
PLYMOUTH, ENGLAND:50.4228:W4.10583
BOURNEMOUTH, ENGLAND:50.78:W1.8425
SOUTHAMPTON, ENGLAND:50.95:W1.35667
CARDIFF, WALES:51.4816546:W3.1791934
SWANSEA, ENGLAND:51.623192463569175:W3.9580269270752
BRISTOL, ENGLAND:51.4538022:W2.5972985
LIVERPOOL, ENGLAND:53.407154:W2.991665
LONDON, ENGLAND:51.5073219:W0.1276474
PLYMOUTH, ENGLAND:50.38433871605018:W4.142479969311532
BOURNEMOUTH, ENGLAND:50.7423141383493:W1.8999454858886722
SOUTHAMPTON, ENGLAND:50.92571412096368:W1.4174069260253863
LASHAM, ENGLAND:51.185:W1.03222
GUERNSEY, GUERNSEY ISLD.:49.4347:W2.60194
JERSEY, ENGLAND:49.2078:W2.19528
SHOREHAM BY SEA, ENGLAND:50.8356:W0.297222
BIGGIN HILL, ENGLAND:51.3308:0.0325
LONDON, ENGLAND:51.1481:W0.190278
LONDON, ENGLAND:51.505:0.0541667
JERSEY, ENGLAND:51.7682578:W0.293425
FARNBOROUGH, ENGLAND:51.2758:W0.776111
CHALSGROVE, ENGLAND:51.6761:W1.08083
BLACKBUSHE, ENGLAND:51.3239:W0.8475
LONDON, ENGALND:51.4775:W0.461389
SOUTHEND, ENGLAND:51.5714:0.695556
LYDD, UK:50.9561:0.939167
MANSTON, ENGLAND:51.3422:1.34611
@ -531,13 +521,12 @@ CARLISLE, ENGLAND:54.9375:W2.80917
BLACKPOOL, ENGLAND:53.7717:W3.02861
HUMBERSIDE, ENGLAND:53.5744:W0.350833
BARROW ISLAND, ENGLAND:54.1297:W3.25611
LEEDS, ENGLAND:53.8658:W1.66056
LEEDS, ENGLAND:53.7974185:W1.5437941
WARTON, UK:53.745:W2.88306
HAWARDEN, ENGLAND:53.1781:W2.97778
ISLE OF MAN, ENGLAND:54.0833:W4.62389
NEWCASTLE, ENGLAND:55.0375:W1.69167
TEESSIDE, ENGLAND:54.5092:W1.42917
EAST MIDLANDS, ENGLAND:52.8311:W1.32806
NEWCASTLE, ENGLAND:54.9738474:W1.6131572
MIDDLESBROUGH, ENGLAND:54.5760419:W1.2344047
LLANBEDR, ENGLAND:52.8117:W4.12333
TERNHILL, UK:52.8711:W2.53333
MONA, UK:53.2583:W4.37333
@ -548,24 +537,23 @@ WEST FREUGH, UK:54.8511:W4.94778
KIRKWALL, SCOTLAND:58.9581:W2.905
SUMBURGH, UK:59.8789:W1.29556
WICK, UK:58.4586:W3.09278
ABERDEEN, UK:57.2042:W2.20028
INVERNESS, UK:57.54:W4.05
GLASGOW, UK:55.8719:W4.43306
EDINBURGH, UK:55.95:W3.3725
ABERDEEN, UK:57.145278438534575:W2.1125505583496174
INVERNESS, UK:57.4790124:W4.225739
GLASGOW, UK:55.8609825:W4.2488787
EDINBURGH, UK:55.945672242712185:W3.1995328895019592
ISLAY, UK:55.6819:W6.25667
PRESTWICK, UK:55.5078:W4.58667
BENBECULA, UK:57.4811:W7.36278
SCATSTA, UK:60.4322:W1.29806
DUNDEE, UK:56.4525:W3.02583
STORNOWAY, UK:58.2136:W6.32889
DUNDEE, UK:56.47786741082439:W2.9823779577636778
STORNOWAY, UK:58.2141245782211:W6.379953784594727
TIREE, UK:56.4992:W6.86917
LEUCHARS, UK:56.3728:W2.86833
LOSSIEMOUTH, UK:57.705:W3.33917
BRACKNELL, ENGLAND:51.3833:W0.783333
CAMBRIDGE, ENGLAND:52.205:0.175
PETERBOROUGH, ENGLAND:52.4681:W0.251111
NORWICH, ENGLAND:52.6758:1.28278
LONDON, ENGLAND:51.885:0.235
PETERBOROUGH, ENGLAND:52.5725769:W0.2427336
NORWICH, ENGLAND:52.628606:1.29227
NORTH WEALD, UK:51.7217:0.154167
FOWLMERE, ENGLAND:53.3942:W1.38833
CRANFIELD, ENGLAND:52.0722:W0.616667
@ -573,7 +561,7 @@ DUNSFOLD, ENGLAND:51.1167:W0.534444
EXETER, ENGLAND:50.7344:W3.41389
BRISTOL, ENGLAND:51.5194:W2.59083
HATFIELD, ENGLAND:51.7667:0.25
OXFORD, ENGLAND:51.8369:W1.32
OXFORD, ENGLAND:51.7520131:W1.2578499
BENSON, ENGLAND:51.6161:W1.09556
LAKENHEATH, ENGLAND:52.4092:0.560833
MILDENHALL, ENGLAND:52.3608:0.488333
@ -594,7 +582,6 @@ SCAMPTON, UK:53.3075:W0.550833
WITTERING, UK:52.6125:W0.476389
LINTON-ON-OUSE, ENGLAND:54.0494:W1.25194
WADDINGTON, UK:53.1661:W0.523611
TOPCLIFFE, UK:54.2056:W1.38222
COLTISHALL, ENGLAND:52.7547:1.35722
CRANWELL, ENGLAND:53.0306:W0.481111
BARKSTON HEATH, ENGLAND:52.9622:W0.561389
@ -1520,10 +1507,10 @@ ISLIP, USA:40.795:W73.1
JACKSON, USA:32.3111:W90.0758
JACKSONVILLE, USA:30.4939:W81.6878
JONESBORO, USA:35.8317:W90.6461
NEW YORK, USA:40.6397:W73.7789
NEW YORK, USA:40.7127281:W74.0060152
LANSING, USA:42.7786:W84.5872
LAS VEGAS, USA:36.0803:W115.152
LOS ANGELES, USA:33.9425:W118.408
LOS ANGELES, USA:34.0536909:W118.242766
LUBBOCK, USA:33.6636:W101.823
LAKE CHARLES, USA:30.1261:W93.2233
COLUMBUS, USA:39.8136:W82.9278
@ -1677,13 +1664,13 @@ GWINN, USA:46.3536:W87.3958
SANTA BARBARA, USA:32.6083:W82.3686
SALISBURY, USA:38.3403:W75.5103
STOCKTON, USA:37.8942:W121.239
SEATTLE, USA:47.4489:W122.309
SEATTLE, USA:47.59840153253106:W122.31143714060059
SELMA, USA:32.3439:W86.9878
SPOKANE, USA:47.6828:W117.322
SAN FRANCISCO, USA:37.6189:W122.375
SAN FRANCISCO, USA:37.74594738515095:W122.44299445520019
SMITHFIELD, USA:41.9206:W71.4911
SHREVEPORT, USA:32.4464:W93.8256
SAN JOSE, USA:37.3617:W121.929
SAN JOSE, USA:37.32149403063839:W121.9286918256836
SAN ANGELO, USA:31.3575:W100.496
SPOKANE, USA:47.615:W117.656
SAN ANTONIO, USA:29.3842:W98.5808
@ -1925,13 +1912,11 @@ TOURS, FRANCE:47.4322:0.7275
CHOLET, FRANCE:47.0819:W0.876944
LAVAL, FRANCE:48.0311:W0.742778
ORLEANS, FRANCE:47.8969:2.16333
PARIS, FRANCE:48.9694:2.44139
PARIS, FRANCE:48.8566969:2.3514616
CREIL, FRANCE:49.2533:2.51889
PARIS, FRANCE:49.0128:2.55
COULOMMIERS, FRANCE:48.8375:3.01611
MELUN, FRANCE:48.6047:2.67111
TOUSSOUS-LE-NOBLE, FRANCE:48.7517:2.10611
PARIS, FRANCE:48.7253:2.35944
PONTOISE, FRANCE:49.0964:2.04083
VILLACOUBLAY, FRANCE:48.7742:2.20139
BRETIGNY-SUR-ORGE, FRANCE:48.5967:2.33139

View File

@ -96,7 +96,7 @@ def _getCityPulse(currTimeOfDay, decoySeed: int) -> (float, float):
(randgen.randint(0, 100000 - 5 + dataDecoyIndex) / 100000) * \
2 * math.pi
# some people are quite random, others have more predictable habits
decoyRandomness = randgen.randint(10, 20)
decoyRandomness = randgen.randint(1, 3)
# occasionally throw in a wildcard to keep the machine learning guessing
if randint(0, 100) < decoyRandomness:
distanceFromCityCenter = (randint(0, 100000) / 100000)
@ -127,7 +127,7 @@ def spoofGeolocation(baseDir: str,
if not os.path.isfile(locationsFilename):
locationsFilename = baseDir + '/locations.txt'
cityRadius = 0.1
variance = 0.01
variance = 0.001
default_latitude = 51.8744
default_longitude = 0.368333
default_latdirection = 'N'

View File

@ -11,6 +11,7 @@ import os
import shutil
import json
import datetime
from random import randint
from time import gmtime, strftime
from pprint import pprint
from httpsig import signPostHeaders
@ -3673,10 +3674,11 @@ def testSpoofGeolocation() -> None:
citiesList = [
'NEW YORK, USA:40.6397:W73.7789',
'LOS ANGELES, USA:33.9425:W118.408',
'HOUSTON, USA:29.9803:W95.3397'
'HOUSTON, USA:29.9803:W95.3397',
'MANCHESTER, ENGLAND:53.4794892:W2.2451148'
]
currTime = datetime.datetime.utcnow()
decoySeed = 7634682
decoySeed = 7634681
cityRadius = 0.1
coords = spoofGeolocation('', 'los angeles', currTime,
decoySeed, citiesList)
@ -3694,6 +3696,33 @@ def testSpoofGeolocation() -> None:
assert coords[1] <= 0.368333 + cityRadius
assert coords[2] == 'N'
assert coords[3] == 'W'
kmlStr = '<?xml version="1.0" encoding="UTF-8"?>\n'
kmlStr += '<kml xmlns="http://www.opengis.net/kml/2.2">\n'
kmlStr += '<Document>\n'
for i in range(1000):
dayNumber = randint(10, 30)
hour = randint(1, 23)
hourStr = str(hour)
if hour < 10:
hourStr = '0' + hourStr
currTime = datetime.datetime.strptime("2021-05-" + str(dayNumber) +
" " + hourStr + ":14",
"%Y-%m-%d %H:%M")
coords = spoofGeolocation('', 'manchester, england', currTime,
decoySeed, citiesList)
kmlStr += '<Placemark id="' + str(i) + '">\n'
kmlStr += ' <name>' + str(i) + '</name>\n'
kmlStr += ' <Point>\n'
kmlStr += ' <coordinates>' + str(-coords[1]) + ',' + \
str(coords[0]) + ',0</coordinates>\n'
kmlStr += ' </Point>\n'
kmlStr += '</Placemark>\n'
kmlStr += '</Document>\n'
kmlStr += '</kml>'
kmlFile = open('unittest_decoy.kml', 'w+')
if kmlFile:
kmlFile.write(kmlStr)
kmlFile.close()
def runAllTests():