add code
This commit is contained in:
parent
bfe4d962d5
commit
8023645165
|
@ -1,3 +1,5 @@
|
|||
# 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.
|
||||
|
|
|
@ -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()
|
||||
|
|
@ -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()
|
||||
|
|
@ -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")
|
||||
|
Loading…
Reference in New Issue