コード例 #1
0
def main():
	parser = argparse.ArgumentParser(description='Label author-used IP')
	parser.add_argument('-b', metavar='BOARD_NAME', help='Board name', required=True)
	args = parser.parse_args()
	board = args.b

	client = MongoClient('localhost', 27017)
	collection = client['Ptt'][board]
	articles = collection.find()

	for article in articles:
		if 'school_data' not in article:
			school_data = findip.findIP_School(article['ip'])

			try:
				collection.update({'_id':article['_id']}, {'$set':school_data})
			except pymongo.errors.CursorNotFound:
				print "No article in database"

			print article['article_title'], article['ip'], school_data['school'], school_data['place']
コード例 #2
0
ptt.loginPtt()
ptt.enterUserList()

client = MongoClient('localhost', 27017)
db = client['Ptt']
collect = db['Gossiping']
articles = collect.find()

for article in articles:
	for message in article['messages']:
		print(message)
		if 'push_userid' in message and 'school' not in message:
			push_userid = message['push_userid']
			user_ip = ptt.getUserIP(push_userid)
			school_data = findip.findIP_School(user_ip)

			school_data['ip'] = user_ip

			collect.update(
				{
					'_id': article['_id'],
					'messages':{
						'$elemMatch':{
							'push_userid': push_userid,
							'ip': {'$nin': [user_ip]}
						}
					}
				},
				{'$set': {
					'messages.$.ip': user_ip,