add code
This commit is contained in:
@ -1,3 +1,5 @@
|
|||||||
# szuru2shimmie2
|
# szuru2shimmie2
|
||||||
|
|
||||||
An accursed set of tools hobbled together to
|
An accursed set of tools hobbled together to migrate from szurubooru 2 shimmie2.
|
||||||
|
|
||||||
|
Expect these tools to be ineffective and low quality, they were cobbled together simply to get a job done, not to be effective.
|
||||||
|
35
finalizer.nim
Normal file
35
finalizer.nim
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
import std/parsecsv
|
||||||
|
import std/strutils
|
||||||
|
import std/osproc
|
||||||
|
|
||||||
|
var safety: CsvParser
|
||||||
|
|
||||||
|
###Translate Them###
|
||||||
|
safety.open("post_safety.csv")
|
||||||
|
|
||||||
|
var f = open("post_ids_with_named_tags.csv", fmAppend)
|
||||||
|
f.writeLine("post_id,tag_name")
|
||||||
|
|
||||||
|
safety.readHeaderRow()
|
||||||
|
while safety.readRow():
|
||||||
|
var command = "find images/ -iname " & safety.rowEntry("id") & "\\.*"
|
||||||
|
var filename = execCmdEx(command).output.replace("\n")
|
||||||
|
var tags: string
|
||||||
|
var rating: char
|
||||||
|
|
||||||
|
if len(readFile("PostsWithTags/" & safety.rowEntry("id"))) > 0:
|
||||||
|
tags = readFile("PostsWithTags/" & safety.rowEntry("id"))
|
||||||
|
tags = tags[1..len(tags)-1]
|
||||||
|
else:
|
||||||
|
tags = "tagme"
|
||||||
|
|
||||||
|
if safety.rowEntry("safety") == "safe":
|
||||||
|
rating = 's'
|
||||||
|
elif safety.rowEntry("safety") == "questionable":
|
||||||
|
rating = 'q'
|
||||||
|
elif safety.rowEntry("safety") == "explicit":
|
||||||
|
rating = 'e'
|
||||||
|
let finalFile = open("finalized.csv", fmAppend)
|
||||||
|
finalFile.writeLine "\"" & filename & "\"" & ",\"" & tags & "\",\"\",\"" & rating & "\",\"thumbnail" & filename & "\""
|
||||||
|
finalFile.close()
|
||||||
|
|
49
merger.nim
Normal file
49
merger.nim
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
import std/parsecsv
|
||||||
|
import std/threadpool
|
||||||
|
import std/os
|
||||||
|
|
||||||
|
{.experimental: "parallel".}
|
||||||
|
|
||||||
|
###Merge Them###
|
||||||
|
proc mergeThem(postID: int) =
|
||||||
|
var tagSpaced: string
|
||||||
|
var uncleanTagged: CsvParser
|
||||||
|
var curTagList: seq[string]
|
||||||
|
uncleanTagged.open("post_ids_with_named_tags.csv")
|
||||||
|
# while true:
|
||||||
|
# try:
|
||||||
|
# uncleanTagged.open("post_ids_with_named_tags.csv")
|
||||||
|
# except CsvError as e:
|
||||||
|
# echo e.msg
|
||||||
|
# echo "failed on 17"
|
||||||
|
# os.sleep(10000)
|
||||||
|
uncleanTagged.readHeaderRow()
|
||||||
|
while uncleanTagged.readRow():
|
||||||
|
if uncleanTagged.rowEntry("post_id") == $postID:
|
||||||
|
try:
|
||||||
|
curTagList.add(uncleanTagged.rowEntry("tag_name"))
|
||||||
|
except:
|
||||||
|
echo "fuck"
|
||||||
|
if len(curTagList)-1 > 0:
|
||||||
|
for tag in countup(0,len(curTagList)-1):
|
||||||
|
tagSpaced = tagSpaced & " " & curTagList[tag]
|
||||||
|
var tries = 0
|
||||||
|
while true and tries != 3:
|
||||||
|
try:
|
||||||
|
echo "Writing" & $tagSpaced & " to PostsWithTags/" & $postID
|
||||||
|
writeFile("PostsWithTags/" & $postID, tagSpaced)
|
||||||
|
break
|
||||||
|
except:
|
||||||
|
os.sleep(5000)
|
||||||
|
tries = tries + 1
|
||||||
|
|
||||||
|
#tagSpaced = ""
|
||||||
|
#curTagList = @[]
|
||||||
|
uncleanTagged.close()
|
||||||
|
#uncleanTagged.open("post_ids_with_named_tags.csv")
|
||||||
|
parallel:
|
||||||
|
for postID in 1..7000:
|
||||||
|
spawn mergeThem(postID)
|
||||||
|
if postID mod 100 == 0:
|
||||||
|
sync()
|
||||||
|
|
26
translate.nim
Normal file
26
translate.nim
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
import std/parsecsv
|
||||||
|
import std/os
|
||||||
|
|
||||||
|
var postTags: CsvParser
|
||||||
|
var tagNames: CsvParser
|
||||||
|
|
||||||
|
removeFile("post_ids_with_named_tags.csv")
|
||||||
|
|
||||||
|
###Translate Them###
|
||||||
|
postTags.open("post_tags.csv")
|
||||||
|
tagNames.open("tag_names.csv")
|
||||||
|
|
||||||
|
var f = open("post_ids_with_named_tags.csv", fmAppend)
|
||||||
|
f.writeLine("post_id,tag_name")
|
||||||
|
|
||||||
|
postTags.readHeaderRow()
|
||||||
|
|
||||||
|
while postTags.readRow():
|
||||||
|
tagNames.readHeaderRow()
|
||||||
|
while tagNames.readRow():
|
||||||
|
if postTags.rowEntry("tag_id") == tagNames.rowEntry("tag_id"):
|
||||||
|
f.writeLine(postTags.rowEntry("post_id") & "," & tagNames.rowEntry("name"))
|
||||||
|
echo (postTags.rowEntry("post_id") & "," & tagNames.rowEntry("name"))
|
||||||
|
tagNames.close()
|
||||||
|
tagNames.open("tag_names.csv")
|
||||||
|
|
Reference in New Issue
Block a user