• Willkommen im Geoclub - dem größten deutschsprachigen Geocaching-Forum. Registriere dich kostenlos, um alle Inhalte zu sehen und neue Beiträge zu erstellen.

GCVote: Suche nach Fakevotes zum eigenen Account

London Rain

Geowizard
Mit der neuen Version des Skriptes hat man ja die Möglichkeit, eine Übersicht all seiner Bewertungen zu bekommen. Wenn man eine Datenbank mit seinen Funden in GSAK hat, kann man damit jetzt sehr schön prüfen, zu welchen Votings kein Find-Log existiert.

Da es früher möglich war, für beliebige Nutzer, die kein PW gesetzt hatten, irgendwelche Caches zu bewerten, kann man hiermit nun überprüfen, ob der eigene Account betroffen war.

Zur Benutzung: Zuerst trägt man in der Zeile unter "# get vote list from server" seinen Nick und PW nach. Dann speichert man den Code als GcVoteCheckFakeVotes.gsk und installiert es wir üblich. Nun wählt man in GSAK die Datenbank mit seinen (aktuellen!) Myfinds aus und lässt das Makro laufen. Es listet nun alle Caches auf die man bewertet hat, wo aber kein Log in der Myfinds-Datenbank zu zu finden ist. Das ist natürlich auch der Fall, wenn diese nicht aktuell ist oder man Caches bewertet, aber diese nicht als gefunden geloggt hat.

Über Feedback würde ich mich freuen. Vor allem ob damit wirklich jemand Fakelogs findet.

Am meisten würd ich mich aber freuen, wenn jemand noch Lust hat, ein Formular zur Eingabe des Nicks und Passwortes zu basteln, der dann in einer Configdatei gespeichert wird. Damit entfällt das manuelle Ändern des Codes. Das kann man sicher sogar weitestgehend von dem GCVoteGrabber-Makro übernehmen. Dabei könnte man dann auch gleich eine Dropdownliste um die eigene Myfinds-Datenbank auszuwählen einbauen, wie es das etwa in FindStatsGen gibt. Fänd ich echt schön wenn da noch jemand Lust zu hat. Hab lang genug dran gesessen und ich hasse Formulare designen. ;)

Code:
#*******************************************
# MacVersion = 1.0
# MacDescription = checks for possible GCVote fake votes
# MacAuthor = London Rain
# MacFileName = GcVoteCheckFakeVotes.gsk
# MacUrl =
#*******************************************


##### create vote list #####

# get vote list from server
$data = GETURL("http://dosensuche.de/GCVote//listUserVotes.php?userName=Dein+User+Name&password=deinPasswort")

# get file from disk (for testing)
#$data = GETFILE("d:\listUserVotes.htm")

# define regex for matching waypoint codes
$regex = $_Quote + ">(.*)</a>"

# get number of occurences of waypoint codes
$countvotes = REGEXCOUNT($regex, $data)

# create list with all waypoints
$list = LIST("listGCVote", "create", ";")

$i=1

# loop through regexps and put them into list
WHILE $i <= $countvotes

  $item = REGEXSUB($regex, $data, $i, 1)

  # unless waypoint code is unknown to GCVote add it to list
  IF $item <> "Untitled"
    $list = LIST("listGCVote", "add", $item)
  ENDIF

  $i = $i + 1

ENDWHILE



##### create find list #####

# query waypoint codes from myfinds sqlite cache database
SQLITECACHES
$status = SQLITE("open", "$_CurrentDataPath\sqlite.db3")
$result = SQLITE("sql", "SELECT Code FROM CachesTemp")
$status = sqlite("close","")

# prepare result for further processing
$result = REPLACE($_NewLine, ";", $result)

# get number of finds (note +1 due to last semicolon missing)
$countfinds = REGEXCOUNT(";", $result) + 1

# create list with all waypoints
$list = LIST("listFinds", "create", ";")

$i=1

# loop through waypoints and put them into list
WHILE $i <= $countfinds

  # due to preprocessing items are delimited by semicolons
  # extract one by one and add to list
  $item = EXTRACT($result, ";", $i)
  $list = LIST("listFinds", "add", $item)
  $i = $i + 1 

ENDWHILE



##### compare both lists #####

$i=1

# loop through voting list (as this one is shorter)
WHILE $i <= VAL(LIST("listGCVote", "count", ""))
  
  # get each item of this list
  $item = LIST("listGCVote", "item", "$i")

  # check if it is included in the find list
  $searchresult = VAL(LIST("listFinds", "find", $item))

  # if item is not found increment $i to check next item
  IF $searchresult=0
    $i=$i+1

  # if item is found delete it from vote list (this later serves as our result list)
  # and delete it from find list too to speed up further searches
  ELSE
    $list=LIST("listGCVote", "delete", "$i")
    $list=LIST("listFinds", "delete", "$searchresult")

  ENDIF

ENDWHILE



##### create html output #####

$output = "<b>You have voted this caches but they are not included in your myfinds database. This may be due to an incomplete myfinds database or caches that you didn't log as find. However you can check if those votes were faked by opening each waypoint to see if you really voted it.</b><ol>" + $_NewLine

# loop through vote result list and add each item to a html list
$i=1
WHILE $i <= VAL(LIST("listGCVote", "count", ""))
  $item = LIST("listGCVote", "item", "$i")
  $output = $output + "<li><a href=" + $_Quote + "http://www.geocaching.com/seek/cache_details.aspx?wp=" + $item + $_Quote + " target=" + $_Quote + "_blank" + $_Quote + ">" + $item + "</a></li>" + $_NewLine
  $i=$i+1
ENDWHILE

$output = $output + "</ol>"

# create final report in GSAK temp directory
$status = PutFile($_Install + "\temp\GCVoteCheckFakeVotes.html", $output)

# open in default browser
FILEOPEN file="$_Install\temp\GCVoteCheckFakeVotes.html"
 
A

Anonymous

Guest
Sehr schöne Arbeit! :gott2: :up:
Hat bei mir wunderbar funktioniert!

ergebnis: Es gab ein paar Votes, bei denen ich den Cache nicht gefunden hatte, aber das hatte alles seinen Grund. Zumeist Events, die noch nicht stattgefunden haben.

Danke fürs Veröffentlichen!
 

Aceacin

Geowizard
Wenn ich nun (wie vor Kurzem) einen Cache nicht finde, weil ich ihn zwischen Stacheldraht und Bierflaschen nicht finden will, dann empfinde ich ein Sternchen nicht als Fake-Vote.

Aber welche Datei muss ich wo ändern? Sehe ich, wen ich selbst bewertet habe ohne foundlog? oder sehe ich wer meine Caches gefakevotet hat?
 
A

Anonymous

Guest
Nein das siehst du nicht. Kann man IMHO auch nicht herausfinden.
Das Makro schafft nur die Möglichkeit deine Logs (die evtl. Fakes sein könnten) zu kontrollieren. Alles im Rahmen der technischen Möglichkeiten
 

Aceacin

Geowizard
Mhh.. dann kann ich sagen, ich habe nicht gefakevotet, weil ich vote nur die Caches, wo ich auch war.
 

flopp

Geomaster
Aceacin schrieb:
Mhh.. dann kann ich sagen, ich habe nicht gefakevotet, weil ich vote nur die Caches, wo ich auch war.

Ich glaube es ist nicht das Ziel des Programms herauszufinden, ob Du gefakevotet hast, sondern vielmehr, ob jemand anderes in Deinem Namen für einen Cache gevotet hat (den Du gar nicht gefunden hast). Vor der Einführung von Passworten war es bei GCVote nämlich möglich, einen beliebigen Cache untern einem beliebigen Namen zu bewerten.
 

Aceacin

Geowizard
Ouh... Achso...
Wo/wie setzte ich dann den oben genannten Code ein? (Um nochmal auf meine erste Frage zurück zu kommen)
 

Aceacin

Geowizard
KBreker schrieb:
[...]. und installiert es wir üblich.
Mhh offensichtlich habe ich von Anfang an die Sache etwas missverstanden... Ich dachte, weil es um GCVote geht, dass man das Script bei Greasemonkey rein bekommen kann. Wenn nicht, dann hat sich alles Weitere erübrigt und es sollte vielleicht der GCVote-Eigentümer überlegen selbst seine Datanbank auf solche FakeVotes zu überprüfen und diese zu entfernen.

CU,
Aceacin
 

ElliPirelli

Geoguru
Aceacin schrieb:
KBreker schrieb:
[...]. und installiert es wir üblich.
Mhh offensichtlich habe ich von Anfang an die Sache etwas missverstanden... Ich dachte, weil es um GCVote geht, dass man das Script bei Greasemonkey rein bekommen kann. Wenn nicht, dann hat sich alles Weitere erübrigt und es sollte vielleicht der GCVote-Eigentümer überlegen selbst seine Datanbank auf solche FakeVotes zu überprüfen und diese zu entfernen.

CU,
Aceacin
Dies ist ein GSAK Macro....
 

UF aus LD

Geowizard
Hallo, läuft geschmeidig durch und ich habe ein Paar Caches gefunden, die ich definitiv nicht bewertet habe. Viele die drin sind habe ich bewertet, da ich dort war und gesucht hatte und trotzdem ein DNF loggen musste.

Ist nur mühselig jeden Cache auf zu machen um zu sehen welcher es ist (habe die GC.... nicht alle im Kopf)

Tolle Arbeit, Danke!
 
OP
London Rain

London Rain

Geowizard
Das meiste wurde während meiner Abwesenheit ja schon beantwortet. Freu mich dass es endlich etwas Feedback gibt. :)

UF aus LD schrieb:
Ist nur mühselig jeden Cache auf zu machen um zu sehen welcher es ist (habe die GC.... nicht alle im Kopf)

Leider geht das nicht anders, denn die Seite auf der du deine Bewertungen abrufen kannst enthält keine weiteren Informationen. GCVote kennt zu einem Cache nur dessen Wegpunktcode und nicht seinen Namen.
 

UF aus LD

Geowizard
Sollte kein Vorwurf sein, sondern nur erklären, warum ich noch nicht durch alle durch bin. Das technische Problem war mir bewusst.

Aber 4-5 habe ich schon gefunden, die ne Wertung von mir hatten, ich aber nicht bewertet habe. Das muss noch aus der zeit bevor ich mein Passwort eingerichtet habe stammen.
 
OP
London Rain

London Rain

Geowizard
Ich hab einfach immer 5-10 nacheinander im Hintergrundtab geöffnet und bin die dann manuell durchgegangen. Wie weit man gekommen ist sieht man ja an der Farbe des jeweiligen Links. Das ging eigentlich ganz fix und macht das ja auch nur einmal. Viel Spaß noch! ;)
 

Chris_rocks31

Geomaster
Ich sage einfach mal DANKE.
Eine schnelle und komfortable Möglichkeit mal nachzuschauen, ob was mit dem eigenen Usernamen passiert ist - eigener Befund: negativ
 
Oben