WIP
This commit is contained in:
parent
0bec576ea8
commit
4879afb63d
31
gmd.lua
31
gmd.lua
|
@ -1,5 +1,3 @@
|
|||
strin = "2~NzUwMCBzdGFycyBjOg==~4~3~9~1 month~6~1803945|2~SSBiZWF0IDYgaW5zYW5lIGRlbW9ucyBpbiAyNCBob3VycyBsbWFvOiBOZWNyb3BvbGlzLCBUaGUgQ2F2ZXJucyBJSSwgRWxlbWVudHMgWCwgWCBBZHZlbnR1cmUsIFNhZGlzbSwgYW5kIEJsYXN0ZXIgYzo=~4~21~9~8 months~6~1793260|2~L1wvXC9cIDwz~4~6~9~1 year~6~1785414|2~U2VudCBmcm9tIGlPUyBTaG9ydGN1dHMh~4~8~9~1 year~6~1776426|2~VGhpcyBjb21tZW50IHdhcyB1cGxvYWRlZCBmb3IgdGhlIEdEIERvY3Mh~4~5~9~1 year~6~1772719|2~VGhlIHRyaWxvZ3kgaGFzIGJlZW4gY29tcGxldGVkLi4uR0cgQWZ0ZXJtYXRoIQ==~4~8~9~1 year~6~1766450|2~Im93byIgLSBGb3VuZG15YmFsbA==~4~4~9~1 year~6~1766338|2~NTAwMCBzdGFycyE=~4~12~9~2 years~6~1756926|2~Qmxvb2RiYXRoIEdHISEh~4~24~9~2 years~6~1745624|2~QWxsZWdpYW5jZSAxMDAl~4~3~9~2 years~6~1744292#73:0:10"
|
||||
|
||||
-- https://stackoverflow.com/questions/40149617/split-string-with-specified-delimiter-in-lua
|
||||
function split(s, sep)
|
||||
local fields = {}
|
||||
|
@ -92,8 +90,14 @@ function table.show(t, name, indent)
|
|||
return cart .. autoref
|
||||
end
|
||||
|
||||
GMD["comments"]["parse"] = function(comment)
|
||||
GMD.comments.mapping = {"levelID","comment","authorPlayerID","likes","dislikes","messageID","spam","authorAccountID","age","percent","modBadge","moderatorChatColor"} -- https://docs.gdprogra.me/#/resources/server/comment
|
||||
|
||||
GMD["comments"]["parse"] = function(comments)
|
||||
local comment = comments
|
||||
local splitted = split(comment, ":")
|
||||
if not splitted[2] then
|
||||
return false
|
||||
end
|
||||
local retern = {}
|
||||
retern.comment = splitted[1]
|
||||
retern.account = splitted[2]
|
||||
|
@ -108,15 +112,28 @@ GMD["comments"]["parse"] = function(comment)
|
|||
for j=1, #ndata do
|
||||
if not (j % 2 == 0) then -- key
|
||||
key = ndata[j]
|
||||
key = GMD.comments.mapping[tonumber(key)]
|
||||
else -- value
|
||||
local value = ndata[j]
|
||||
retern.parsed.comment[i][key] = value
|
||||
end
|
||||
end
|
||||
end
|
||||
-- print("DONE")
|
||||
-- print(table.show(retern.parsed.comment))
|
||||
|
||||
return retern
|
||||
end
|
||||
print(GMD["comments"]["parse"](strin))
|
||||
GMD["comments"]["getOneComment"] = function (self, comments, pos)
|
||||
local parsed = self.parse(comments)
|
||||
if not parsed then
|
||||
return false
|
||||
else
|
||||
return parsed.parsed.comment[pos or 1]
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function GMDtest()
|
||||
local strin = "2~NzUwMCBzdGFycyBjOg==~4~3~9~1 month~6~1803945|2~SSBiZWF0IDYgaW5zYW5lIGRlbW9ucyBpbiAyNCBob3VycyBsbWFvOiBOZWNyb3BvbGlzLCBUaGUgQ2F2ZXJucyBJSSwgRWxlbWVudHMgWCwgWCBBZHZlbnR1cmUsIFNhZGlzbSwgYW5kIEJsYXN0ZXIgYzo=~4~21~9~8 months~6~1793260|2~L1wvXC9cIDwz~4~6~9~1 year~6~1785414|2~U2VudCBmcm9tIGlPUyBTaG9ydGN1dHMh~4~8~9~1 year~6~1776426|2~VGhpcyBjb21tZW50IHdhcyB1cGxvYWRlZCBmb3IgdGhlIEdEIERvY3Mh~4~5~9~1 year~6~1772719|2~VGhlIHRyaWxvZ3kgaGFzIGJlZW4gY29tcGxldGVkLi4uR0cgQWZ0ZXJtYXRoIQ==~4~8~9~1 year~6~1766450|2~Im93byIgLSBGb3VuZG15YmFsbA==~4~4~9~1 year~6~1766338|2~NTAwMCBzdGFycyE=~4~12~9~2 years~6~1756926|2~Qmxvb2RiYXRoIEdHISEh~4~24~9~2 years~6~1745624|2~QWxsZWdpYW5jZSAxMDAl~4~3~9~2 years~6~1744292#73:0:10"
|
||||
assert(GMD["comments"]:getOneComment(strin)["comment"] == "NzUwMCBzdGFycyBjOg==")
|
||||
assert(not GMD["comments"]:getOneComment("-1"))
|
||||
end
|
||||
GMDtest()
|
||||
|
|
26
grab.lua
26
grab.lua
|
@ -1 +1,27 @@
|
|||
require "gmd"
|
||||
|
||||
NEW_ITEMS = {}
|
||||
|
||||
function readAll(file)
|
||||
local f = assert(io.open(file, "rb"))
|
||||
local content = f:read("*all")
|
||||
f:close()
|
||||
return content
|
||||
end
|
||||
|
||||
-- print(table.show(false))
|
||||
wget.callbacks.httploop_result = function(url, err, http_stat)
|
||||
local data = readAll(http_stat.local_file)
|
||||
-- Time to make sure that it's a valid response.
|
||||
local result = GMD.comments.parse(data)
|
||||
if result then
|
||||
return wget.actions.NOTHING
|
||||
else
|
||||
io.stderr:write("\aYou've been IP-banned from Geometry Dash's servers. Sorry about that.\n")
|
||||
io.stderr:write("Please let us know in #geometrytrash on hackint!\n")
|
||||
io.stderr:write("Sleeping 69 seconds. (nice)\n")
|
||||
os.execute("sleep 69")
|
||||
return wget.actions.ABORT -- We've been banned
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -215,7 +215,7 @@ pipeline = Pipeline(
|
|||
'warc_file_base': ItemValue('warc_file_base')
|
||||
}
|
||||
),
|
||||
CheckLandslide(),
|
||||
#CheckLandslide(),
|
||||
PrepareStatsForTracker(
|
||||
defaults={'downloader': downloader, 'version': VERSION},
|
||||
file_groups={
|
||||
|
|
Loading…
Reference in New Issue