def run(self): mylog = MyLog('/home/pi/Documents/DealProject/log/dealdaemon.log') dealsea = Dealsea() slickdeals = Slickdeals() tagging = Tagging() ppom = Ppomppu() sendManualTag = ManualTag() clien = Clien() while True: dealsea.run() logging.info('***************************DEALSEA DONE******************************') slickdeals.run() logging.info('***************************SLICKDEALS DONE******************************') ppom.run() logging.info('***************************PPOMPPU DONE******************************') clien.run() logging.info('***************************CLIEN DONE******************************') try: logging.info('***************************tagging started***************************') for index in range(8): if tagging.run() <= 0: break else: logging.info('***************************tagging again***************************') logging.info('***************************tagging ended***************************') # sendManualTag.run() except Exception as e: logging.exception(e) time.sleep(60*5) # 20 minutes
def _widgets(self): splitter = QSplitter() # -- Left left_splitter = QSplitter(Qt.Vertical) splitter.addWidget(left_splitter) # Top left filetree = FileTree(self._root_path, self._on_filetree_selection_changed) left_splitter.addWidget(filetree) # Bottom left tagging = Tagging() left_splitter.addWidget(tagging) # -- Right image = ImageDisplay() # Wrap it in a resizable scroll area area = QScrollArea() area.setWidget(image) area.setWidgetResizable(True) area.setAlignment(Qt.AlignCenter) splitter.addWidget(area) # A slight hack to split width equally splitter.setSizes([100000, 100000]) return splitter, filetree, tagging, image
def create(cls, instance, title, text, creator, function=NORM, tags=None, wiki=False, formatting=False, sectionpage=False, allow_comment=True, allow_selection=True, always_show_original=True, abstract=None): from adhocracy.lib.text import title2alias from text import Text from tagging import Tagging if function not in Page.FUNCTIONS: raise AttributeError("Invalid page function type") label = title2alias(title) page = Page(instance, label, creator, function, formatting, sectionpage, allow_comment, allow_selection, always_show_original, abstract) meta.Session.add(page) meta.Session.flush() Text(page, Text.HEAD, creator, title, text, wiki) if tags is not None: page.taggings = Tagging.create_all(page, tags, creator) return page
def create(cls, instance, label, user, with_vote=False, tags=None): from poll import Poll from tagging import Tagging proposal = Proposal(instance, label, user) meta.Session.add(proposal) meta.Session.flush() poll = Poll.create(proposal, user, Poll.RATE, with_vote=with_vote) proposal.rate_poll = poll if tags is not None: proposal.taggings = Tagging.create_all(proposal, tags, user) meta.Session.flush() return proposal
def create(cls, instance, title, text, creator, function=NORM, tags=None, wiki=False): from adhocracy.lib.text import title2alias from text import Text from tagging import Tagging if function not in Page.FUNCTIONS: raise AttributeError("Invalid page function type") label = title2alias(title) page = Page(instance, label, creator, function) meta.Session.add(page) meta.Session.flush() Text(page, Text.HEAD, creator, title, text, wiki) if tags is not None: page.taggings = Tagging.create_all(page, tags, creator) return page
def setUp(self): self.client = Redis(decode_responses=True) self.client.flushdb() self.article_tags = Tagging(self.client, "article::123")
class TestTagging(unittest.TestCase): def setUp(self): self.client = Redis(decode_responses=True) self.client.flushdb() self.article_tags = Tagging(self.client, "article::123") def test_add_and_is_included(self): self.assertFalse(self.article_tags.is_included("redis")) self.article_tags.add("redis") self.assertTrue(self.article_tags.is_included("redis")) def test_add_multi_element_in_once(self): self.article_tags.add("redis", "database", "nosql") self.assertTrue(self.article_tags.is_included("redis")) self.assertTrue(self.article_tags.is_included("database")) self.assertTrue(self.article_tags.is_included("nosql")) def test_remove(self): self.article_tags.add("redis") self.article_tags.remove("redis") self.assertFalse(self.article_tags.is_included("redis")) def test_remove_multi_elements_in_once(self): self.article_tags.add("redis", "database", "nosql") self.article_tags.remove("redis", "database", "nosql") self.assertFalse(self.article_tags.is_included("redis")) self.assertFalse(self.article_tags.is_included("database")) self.assertFalse(self.article_tags.is_included("nosql")) def test_get_all_tags(self): self.assertEqual(self.article_tags.get_all_tags(), set()) self.article_tags.add("redis", "database", "nosql") self.assertEqual(self.article_tags.get_all_tags(), {"redis", "database", "nosql"}) def test_count(self): self.assertEqual(self.article_tags.count(), 0) self.article_tags.add("redis") self.assertEqual(self.article_tags.count(), 1)
image = open(image_path, 'r') return image.read() # logger logging.basicConfig(stream=sys.stderr, level=logging.DEBUG) logging.debug("logging started") logger = logging.getLogger(__name__) # Config Parsing config = SafeConfigParser() config.read('config.ini') # Queue queue = Queue(config) tagging = Tagging(config) translater = Translater(config) es_engine = SEngine(config) # consuming forever while True: # ensure all arrays are empy doc = {} tags = [] translated_tags = [] # get image to process image = queue.pop_from_queue() if not image: time.sleep(0.25) continue logger.info('recieved image=%s', image)