Skip to content

Commit

Permalink
add scripts to get and remove topics by GS Userid in order to cope wi…
Browse files Browse the repository at this point in the history
…th spammers
  • Loading branch information
rtanglao committed Jun 12, 2012
1 parent 3a528a8 commit 92f3147
Show file tree
Hide file tree
Showing 2 changed files with 76 additions and 0 deletions.
37 changes: 37 additions & 0 deletions getTopicsByGSUserId.rb
@@ -0,0 +1,37 @@
#!/usr/bin/env ruby
require 'rubygems'
require 'json'
require 'time'
require 'date'
require 'mongo'

MONGO_HOST = ENV["MONGO_HOST"]
raise(StandardError,"Set Mongo hostname in ENV: 'MONGO_HOST'") if !MONGO_HOST
MONGO_PORT = ENV["MONGO_PORT"]
raise(StandardError,"Set Mongo port in ENV: 'MONGO_PORT'") if !MONGO_PORT
MONGO_USER = ENV["MONGO_USER"]
raise(StandardError,"Set Mongo user in ENV: 'MONGO_USER'") if !MONGO_USER
MONGO_PASSWORD = ENV["MONGO_PASSWORD"]
raise(StandardError,"Set Mongo user in ENV: 'MONGO_PASSWORD'") if !MONGO_PASSWORD

db = Mongo::Connection.new(MONGO_HOST, MONGO_PORT.to_i).db("gs")
auth = db.authenticate(MONGO_USER, MONGO_PASSWORD)
if !auth
raise(StandardError, "Couldn't authenticate, exiting")
exit
end

topicsColl = db.collection("topics")

if ARGV.length < 1
puts "usage: #{$0} [userid for topics]"
exit
end

userid = ARGV[0]

topicsColl.find({"author.canonical_name" => userid},
:fields => ["at_sfn", "id", "subject", "content", "author"]
).each do |t|
printf("URL:%s TITLE:%s,FIRST66:%s\n", t["at_sfn"],t["subject"], t["content"][0..66])
end
39 changes: 39 additions & 0 deletions removeTopicsByGSUserId.rb
@@ -0,0 +1,39 @@
#!/usr/bin/env ruby
require 'rubygems'
require 'json'
require 'time'
require 'date'
require 'mongo'
require 'pp'

MONGO_HOST = ENV["MONGO_HOST"]
raise(StandardError,"Set Mongo hostname in ENV: 'MONGO_HOST'") if !MONGO_HOST
MONGO_PORT = ENV["MONGO_PORT"]
raise(StandardError,"Set Mongo port in ENV: 'MONGO_PORT'") if !MONGO_PORT
MONGO_USER = ENV["MONGO_USER"]
raise(StandardError,"Set Mongo user in ENV: 'MONGO_USER'") if !MONGO_USER
MONGO_PASSWORD = ENV["MONGO_PASSWORD"]
raise(StandardError,"Set Mongo user in ENV: 'MONGO_PASSWORD'") if !MONGO_PASSWORD

db = Mongo::Connection.new(MONGO_HOST, MONGO_PORT.to_i).db("gs")
auth = db.authenticate(MONGO_USER, MONGO_PASSWORD)
if !auth
raise(StandardError, "Couldn't authenticate, exiting")
exit
end

topicsColl = db.collection("topics")

if ARGV.length < 1
puts "usage: #{$0} [remove topic for this userid]"
exit
end

userid = ARGV[0]

topicsColl.find({"author.canonical_name" => userid},
:fields => ["at_sfn", "id", "subject", "content", "author"]
).each do |t|
$stderr.printf("Removing id:%d, URL:%s TITLE:%s,FIRST66:%s\n", t["id"], t["at_sfn"],t["subject"], t["content"][0..66])
topicsColl.remove("id" => t["id"])
end

0 comments on commit 92f3147

Please sign in to comment.