mirror of
https://github.com/thewesker/ebooks_example.git
synced 2025-12-20 04:11:13 -05:00
First pass at adding function back
This commit is contained in:
42
boodoo.rb
42
boodoo.rb
@@ -49,6 +49,46 @@ module Ebooks::Boodoo
|
|||||||
config.access_token_secret = @access_token_secret
|
config.access_token_secret = @access_token_secret
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def jsonify(paths)
|
||||||
|
paths.each do |path|
|
||||||
|
name = File.basename(path).split('.')[0]
|
||||||
|
ext = path.split('.')[-1]
|
||||||
|
new_path = name + ".json"
|
||||||
|
lines = []
|
||||||
|
id = nil
|
||||||
|
|
||||||
|
if ext.downcase == "json"
|
||||||
|
log "Taking no action on JSON corpus at #{path}"
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
content = File.read(path, :encoding => 'utf-8')
|
||||||
|
|
||||||
|
if ext.downcase == "csv" #from twitter archive
|
||||||
|
log "Reading CSV corpus from #{path}"
|
||||||
|
content = CSV.parse(content)
|
||||||
|
header = content.shift
|
||||||
|
text_col = header.index('text')
|
||||||
|
id_col = header.index('tweet_id')
|
||||||
|
lines = content.map do |tweet|
|
||||||
|
id = tweet[id_col].empty? ? 0 : tweet[id_col]
|
||||||
|
{id: id, text: tweet[text_col]}
|
||||||
|
end
|
||||||
|
else
|
||||||
|
log "Reading plaintext corpus from #{path}"
|
||||||
|
lines = content.split("\n").map do |line|
|
||||||
|
{id: 0, text: line}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# BELOW IS FOR FILE-SYSTEM; NEED TO ALTER FOR CLOUDINARY/REQUEST?
|
||||||
|
File.open(new_path, 'w') do |f|
|
||||||
|
log "Writing #{lines.length} lines to #{new_path}"
|
||||||
|
f.write(JSON.pretty_generate(lines))
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
## Retweet check based on Really-Existing-RT practices
|
## Retweet check based on Really-Existing-RT practices
|
||||||
@@ -151,7 +191,7 @@ class Ebooks::Boodoo::BoodooBot < Ebooks::Bot
|
|||||||
|
|
||||||
def missing_fields
|
def missing_fields
|
||||||
$required_fields.select { |field|
|
$required_fields.select { |field|
|
||||||
# p "#{field} = #{send(field)}"
|
# log "#{field} = #{send(field)}"
|
||||||
send(field).nil? || send(field).empty?
|
send(field).nil? || send(field).empty?
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user