當前位置: 首頁>>代碼示例>>Python>>正文


Python Search.search_in_list_file方法代碼示例

本文整理匯總了Python中Search.search_in_list_file方法的典型用法代碼示例。如果您正苦於以下問題:Python Search.search_in_list_file方法的具體用法?Python Search.search_in_list_file怎麽用?Python Search.search_in_list_file使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Search的用法示例。


在下文中一共展示了Search.search_in_list_file方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: run

# 需要導入模塊: import Search [as 別名]
# 或者: from Search import search_in_list_file [as 別名]
	def run(self):
		# Creazione socket
		s = sfunc.create_socket_server(func.roll_the_dice(self.host), self.port)

		if s is None:
			tfunc.write_daemon_text(self.name, self.host, 'Error: Daemon could not open socket in upload.')

		else:
			while 1: 

				conn, addr = s.accept()
				ricevutoByte = conn.recv(const.LENGTH_PACK)

				if not ricevutoByte:
					tfunc.write_daemon_error(self.name, addr[0], "Pacchetto errato")

				# Chiusura del demone
				elif (str(ricevutoByte[0:4], "ascii") == pack.CODE_CLOSE):
					try:
						tfunc.write_daemon_success(self.name, addr[0], "Chiusura del demone Tracker")
					except:
						continue
					finally:
						break

				# Test corretto avvio demone
				elif (str(ricevutoByte[0:4], "ascii") == pack.CODE_CONFIRM):
					tfunc.write_daemon_success(self.name, addr[0], "Avvio demone Tracker")

				# Reale funzionamento
				else:
					if str(ricevutoByte[0:4], "ascii") == pack.CODE_LOGIN: ### LOGIN OK
						pk = logi.reconnect_user(ricevutoByte[4:59], ricevutoByte[59:], self.listUsers, self.name, addr)
						conn.sendall(pk)

					elif str(ricevutoByte[0:4], "ascii") == pack.CODE_ADDFILE: ### ADD FILE OK
						# Controllo presenza user
						if ricevutoByte[4:20] in self.listUsers:
							pk = add.add_file_to_list(ricevutoByte[36:136], ricevutoByte[20:30], ricevutoByte[30:36], ricevutoByte[4:20], ricevutoByte[-32:], self.listFile, self.name, addr)
							conn.sendall(pk)
						else:
							tfunc.write_daemon_error(self.name, addr[0], "ADD FILE - User not logged")

					elif(str(ricevutoByte[0:4], "ascii") == pack.CODE_LOOK): ### LOOK
						# Controllo presenza user
						if ricevutoByte[4:20] in self.listUsers:
							pk = src.search_in_list_file(self.listFile, ricevutoByte[4:20], ricevutoByte[20:], self.name, addr)
							conn.sendall(pk)
						else:
							tfunc.write_daemon_error(self.name, addr[0], "SEARCH FILE - User not logged")

					elif(str(ricevutoByte[0:4], "ascii") == pack.CODE_FIND_PART): ### SEARCH PART 
						# Controllo presenza user
						if ricevutoByte[4:20] in self.listUsers:
							pk = src.find_hitpeer(self.listFile, self.listUsers, ricevutoByte[4:20], ricevutoByte[20:], self.name, addr)
							conn.sendall(pk)
						else:
							tfunc.write_daemon_error(self.name, addr[0], "REQUEST FILEPART - User not logged")

					elif str(ricevutoByte[0:4], "ascii") == pack.CODE_UPDATE_PART: ### UPDATE MEMORY OK
						# Controllo presenza user
						if ricevutoByte[4:20] in self.listUsers:
							pk = fs.update_memory(ricevutoByte[4:20], ricevutoByte[20:52], ricevutoByte[52:], self.listFile, self.name, addr)
							conn.sendall(pk)
						else:
							tfunc.write_daemon_error(self.name, addr[0], "ADD FILE - User not logged")

					elif str(ricevutoByte[0:4], "ascii") == pack.CODE_LOGOUT: ### LOGOUT OK
						if ricevutoByte[4:20] in self.listUsers:
							pk = logo.try_logout(ricevutoByte[4:], self.listFile, self.listUsers, self.name, addr)
							conn.sendall(pk)
						else:
							tfunc.write_daemon_error(self.name, addr[0], "User not logged")

					else:
						tfunc.write_daemon_error(self.name, addr[0], "Ricevuto pacchetto sbagliato: " + str(ricevutoByte, "ascii"))
			s.close()
開發者ID:tommasoberlose,項目名稱:p2p_bittorrent,代碼行數:79,代碼來源:Tracker.py


注:本文中的Search.search_in_list_file方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。