Beispiel #1
0
def _smartSleep(deleteNumber):
	global __LASTDELETENUMBER__, __SLEEPLEVEL__, __CURRENTSLEEPLEVEL__
	#当上一次和本次删帖数都为0时,增大等待时间
	if __LASTDELETENUMBER__ == 0 and deleteNumber == 0 and __CURRENTSLEEPLEVEL__ != 5:
		__CURRENTSLEEPLEVEL__ += 1

	if __LASTDELETENUMBER__ != 0:
		#本次删帖数增加超过30%,就减少等待时间
		if (deleteNumber - __LASTDELETENUMBER__) / float(__LASTDELETENUMBER__) > 0.5:
			if __CURRENTSLEEPLEVEL__ != 0:
				__CURRENTSLEEPLEVEL__ -= 1

		#同理,删帖数降低则增大等待时间
		elif (__LASTDELETENUMBER__ - deleteNumber) / float(__LASTDELETENUMBER__) > 0.5:
			if __CURRENTSLEEPLEVEL__ != 5:
				__CURRENTSLEEPLEVEL__ +=1


	__LASTDELETENUMBER__ = deleteNumber

	sleep(int(60 * __SLEEPLEVEL__[__CURRENTSLEEPLEVEL__]))
Beispiel #2
0
def _delete(config, keywords):
	deleteCount = 0
	stdLog(u'获取首页...', 'info')
	threadDataList = getThreadDataList(config['forum'])
	for threadData in threadDataList:
		if _judgeThread(threadData, config, keywords):
			if _deleteThread(threadData, config):
				deleteCount += 1
				if not config['debug']:
					sleep(5)
			else:
				sleep(5)
				return

	if deleteCount != 0:
		stdLog(u'删除 {0} 个帖子'.format(deleteCount), 'info')
	#仅在未开启调试,且删帖数为0时才显示
	elif not config['debug']:
		stdLog(u'等待更多新帖...', 'info')
		_smartSleep(deleteCount)
	else :
		sleep(5)