示例#1
0
    def Set_FollowLists(self):
        #############################
        # 更新されてなければ抜ける
        if self.FLG_Update == False:
            return True

        wARR_SetFile = []
        #############################
        # フォロー一覧
        wKeyList = list(self.ARR_FollowTL.keys())
        for wUser in wKeyList:
            wLine = self.ARR_FollowTL[wUser] + gVal.DEF_DATA_BOUNDARY + wUser
            wARR_SetFile.append(wLine)

        #############################
        # フォローファイル書き込み (改行つき)
        wFile_path = self.Obj_Parent.CHR_User_path + gVal.DEF_STR_FILE[
            'FollowListFile']
        ##		if CLS_File.sWriteFile( wFile_path, self.ARR_FollowTL, inRT=True )!=True :
        if CLS_File.sWriteFile(wFile_path, wARR_SetFile, inRT=True) != True:
            self.Obj_Parent.OBJ_Mylog.Log(
                'a',
                "CLS_Follow: Set_FollowLists: Set follow list file is failed: "
                + wFile_path)
            return False  #失敗

        wARR_SetFile = []
        #############################
        # フォロワー一覧
        wKeyList = list(self.ARR_FollowerTL.keys())
        for wUser in wKeyList:
            wLine = self.ARR_FollowerTL[wUser] + gVal.DEF_DATA_BOUNDARY + wUser
            wARR_SetFile.append(wLine)

        #############################
        # フォロワーファイル書き込み (改行つき)
        wFile_path = self.Obj_Parent.CHR_User_path + gVal.DEF_STR_FILE[
            'FollowerListFile']
        ##		if CLS_File.sWriteFile( wFile_path, self.ARR_FollowerTL, inRT=True )!=True :
        if CLS_File.sWriteFile(wFile_path, wARR_SetFile, inRT=True) != True:
            self.Obj_Parent.OBJ_Mylog.Log(
                'a',
                "CLS_Follow: Set_FollowLists: Set follower list file is failed: "
                + wFile_path)
            return False  #失敗

        wStr = "フォローリスト更新あり: follow=" + str(len(
            self.ARR_FollowTL)) + " follower=" + str(len(self.ARR_FollowerTL))
        self.Obj_Parent.OBJ_Mylog.Log('b', wStr)
        return True  #成功
示例#2
0
    def Set_CLData(self):
        #############################
        # 書き込みデータの作成
        wCLDataList = []

        wKeylist = list(self.ARR_CLData.keys())
        for wKey in wKeylist:
            if self.ARR_CLData[wKey]["Valid"] == False:
                continue  #無効データ

            wSetLine = self.ARR_CLData[wKey]["Kind"] + ","
            wSetLine = self.ARR_CLData[wKey]["Sended"] + ","
            wSetLine = wSetLine + str(self.ARR_CLData[wKey]["Hour"]) + ","
            wSetLine = wSetLine + str(self.ARR_CLData[wKey]["Minute"]) + ","
            wSetLine = wSetLine + self.ARR_CLData[wKey]["TootFile"]
            wCLDataList.append(wSetLine)

        #############################
        # ファイル書き込み (改行つき)
##		wFile_path = self.Obj_Parent.CHR_User_path + gVal.DEF_STR_FILE['CLDataFile']
        wFile_path = gVal.DEF_STR_FILE[
            'MasterConfig_path'] + gVal.DEF_STR_FILE['CLDataFile']
        if CLS_File.sWriteFile(wFile_path, wCLDataList, inRT=True) != True:
            self.Obj_Parent.OBJ_Mylog.Log(
                'a', "CLS_CircleToot: Set_CLData: CLDataFile read failed: " +
                wFile_path)
            return False  #失敗

        return True  #成功
示例#3
0
文件: botctrl.py 项目: xfyer/lucibot
    def sChk1HourTime(cls, inPath):
        #############################
        # 記録ファイルをロード
        w1HourTime = []
        wFilePath = inPath + gVal.DEF_STR_FILE['Chk1HourFile']
        if CLS_File.sReadFile(wFilePath, w1HourTime) != True:
            return False  #処理失敗

        try:
            w1HourTime = w1HourTime[0].split(',')
            wHour = w1HourTime[1]
        except:
            return False  #処理失敗

        #############################
        # PC時間を取得
        wGetTime = CLS_OSIF.sGetTime()
        if wGetTime['Result'] != True:
            return False  #処理失敗

        gVal.STR_TimeInfo['Object'] = wGetTime['Object']
        gVal.STR_TimeInfo['TimeDate'] = wGetTime['TimeDate']
        gVal.STR_TimeInfo['Hour'] = wGetTime['Hour']
        gVal.STR_TimeInfo['Week'] = wGetTime['Week']
        gVal.STR_TimeInfo['Result'] = True  #有効

        wGetDate = wGetTime['TimeDate'].split(" ")

        #############################
        # 時間が同じ=少なくとも1時間経ってないか?
        if w1HourTime[0] != "1900-01-01":
            if wHour == wGetTime['Hour']:
                gVal.STR_TimeInfo['OneHour'] = False
                return True
            else:
                gVal.STR_TimeInfo['OneHour'] = True

            if w1HourTime[0] == wGetDate[0]:
                gVal.STR_TimeInfo['OneDay'] = False
##				return True
            else:
                gVal.STR_TimeInfo['OneDay'] = True

        else:
            ##bot起動初回の場合は時間だけ保存する
            gVal.STR_TimeInfo['OneHour'] = False
            gVal.STR_TimeInfo['OneDay'] = False

        #############################
        # 時間をセーブ
        wTime = wGetTime['TimeDate'].split(" ")
        wTime = wTime[0] + ',' + wGetTime['Hour'] + ',' + wGetTime['Week']

        wSaveTime = []
        wSaveTime.append(wTime)
        if CLS_File.sWriteFile(wFilePath, wSaveTime) != True:
            return False  #処理失敗

        return True
示例#4
0
文件: regist.py 项目: xfyer/lucibot
	def __setTrafficUser( self, inUserList ):
		#############################
		# ファイル書き込み (改行つき)
		wFile_path = gVal.DEF_STR_FILE['TrafficFile']
		if CLS_File.sWriteFile( wFile_path, inUserList, inRT=True )!=True :
			return False	#失敗
		
		return True			#成功
示例#5
0
    def sChangeTrafficUser(cls, inUsername):
        #############################
        # 名前の妥当性チェック
        wResUser = cls.sUserCheck(inUsername)
        ##	"Result"	: False,
        ##	"User"		: "",
        ##	"Domain"	: "",
        ##	"Reason"	: "",
        ##	"Registed"	: False,
        if wResUser['Result'] != True:
            return False  #不正

        #############################
        # 読み出し先初期化
        wTrafficUser = []

        #############################
        # ファイル読み込み
        wFile_path = gVal.DEF_STR_FILE['TrafficFile']
        if CLS_File.sReadFile(wFile_path, outLine=wTrafficUser) != True:
            return False  #失敗

        #############################
        # 計測ユーザか
        if inUsername not in wTrafficUser:
            return True  #対象外

        ##自分は抜いておく
        wTrafficUser.remove(inUsername)

        #############################
        # 同一ドメインの別ユーザを検索
        wUserList = cls.sGetUserList()
        wNewUser = None
        for wLine in wUserList:
            if wLine == inUsername:
                continue  #自分は除く

            wDomain = wLine.split("@")
            if wDomain[1] == wResUser['Domain']:
                wNewUser = wLine
                break

        if wNewUser == None:
            ##ありえない
            return False

        #############################
        # 切替
        wTrafficUser.append(wNewUser)

        #############################
        # ファイル書き込み (改行つき)
        wFile_path = gVal.DEF_STR_FILE['TrafficFile']
        if CLS_File.sWriteFile(wFile_path, wTrafficUser, inRT=True) != True:
            return False  #失敗

        return True  #正常
示例#6
0
    def Set_RateTwitterTL(self):
        #############################
        # ファイル書き込み (改行つき)
        wFile_path = gVal.DEF_MASTERCONFIG + gVal.DEF_STR_FILE['TweetFile']
        if CLS_File.sWriteFile(wFile_path, self.ARR_UpdateTL,
                               inRT=True) != True:
            return False  #失敗

        return True  #成功
示例#7
0
    def Set_RateLTL(self):
        #############################
        # ファイル書き込み (改行つき)
        wFile_path = self.Obj_Parent.CHR_User_path + gVal.DEF_STR_FILE[
            'Rate_LTLFile']
        if CLS_File.sWriteFile(wFile_path, self.ARR_UpdateTL,
                               inRT=True) != True:
            return False  #失敗

        return True  #成功
示例#8
0
文件: dbedit.py 项目: xfyer/lucibot
    def __setDomainsFile(self):
        #############################
        # ファイル書き込み (改行つき)
        ##		wFile_path = gVal.DEF_STR_FILE['MstdnDomains_File']
        wFile_path = gVal.DEF_STR_FILE[
            'MasterConfig_path'] + gVal.DEF_STR_FILE['MstdnDomains_File']
        if CLS_File.sWriteFile(wFile_path, self.ARR_Domains,
                               inRT=True) != True:
            ##			wStr = "CLS_DBedit: __setDomainsFile: MstdnDomains_File write is failed: " + gVal.DEF_STR_FILE['MstdnDomains_File']
            wStr = "CLS_DBedit: __setDomainsFile: MstdnDomains_File write is failed: " + wFile_path
            CLS_OSIF.sPrn(wStr)
            return False  #失敗

        return True  #成功
示例#9
0
    def sSetMasterConfig(cls):
        #############################
        # 書き込みデータを作成
        wSetLine = []
        wKeylist = gVal.STR_MasterConfig.keys()
        for iKey in wKeylist:
            wLine = iKey + "=" + str(gVal.STR_MasterConfig[iKey]) + '\n'
            wSetLine.append(wLine)

        #############################
        # ファイル上書き書き込み
        if CLS_File.sWriteFile(gVal.DEF_STR_FILE['MasterConfig'],
                               wSetLine) != True:
            return False  #失敗

        return True
示例#10
0
文件: botctrl.py 项目: xfyer/lucibot
    def sLock(cls, inPath):
        ##		#############################
        ##		# 排他処理をしなければ なし
        ##		if gVal.STR_MasterConfig['Lock'] != "on" :
        ##			return False

        #############################
        # 排他ファイルオープン
        wLockStat = CLS_BotCtrl.__openLock(inPath)

        #############################
        # 排他確認

        #############################
        # 排他=0 :なし
        #   排他ONする
        if wLockStat == "0":
            wLock = []
            wLock.append("1")
            wFilePath = inPath + gVal.DEF_STR_FILE['LockFile']
            if CLS_File.sWriteFile(wFilePath, wLock) != True:
                return True  #失敗=排他あり にしてる

            return False  #排他なし

        #############################
        # 排他=1: 排他中
        #   待つ
        elif wLockStat == "1":
            CLS_BotCtrl.__lockWait(inPath)

        #############################
        # 排他=8: バックグラウンド処理待ち
        #   待つ
        elif wLockStat == "8":
            CLS_BotCtrl.__backWait(inPath)
            return False  #排他なし

        #############################
        # 排他=その他 失敗
        #### 排他あり

        return True  #排他あり
示例#11
0
文件: botctrl.py 项目: xfyer/lucibot
 def sUnlock(cls, inPath):
     wLock = []
     wLock.append("0")
     wFilePath = inPath + gVal.DEF_STR_FILE['LockFile']
     CLS_File.sWriteFile(wFilePath, wLock)
     return