def getEntries(self):
     """ Получаем содержимое фида с Хабра """
     if not self.login():
         return
     self._feed = self._reader.getFeed(self._feedName)
     self._feed.clearItems()
     self._feed.loadItems(excludeRead=True)
     cnt = 0
     while len(self._feed.getItems()) > 0:
         before = len(self._feed.getItems())
         self._feed.loadMoreItems(excludeRead=True)
         cnt += 1
         if len(self._feed.getItems()) - before == 0:
             break
     if settings.autoSwitchCategories():
         self._switchToBoring()
     self.processEntries()
    def markFirstCountItemsAsRead(self, count, protectionMessage):
        """ 
        Отмечаем первые count записей в текущей категории, как прочитанные.
        Перед этим показываем 'защитное сообщение' protectionMessage

        """
        if not self.login():
            return

        if not self.userReallyWantsToMarkAsRead(protectionMessage):
            return
        progress = self.progressDialog(count)
        progress.show()
        for row in range(count):
            item = self._currentCategory().child(row)
            progress.setValue(row)
            id = item.data(0, Qt.UserRole)
            if item.checkState(0) == Qt.Checked:
                self._feed.getItem(id).interesting = True
                continue
            try:
                self._feed.getItem(id).markRead()
            except HTTPException as e:
                # Вообще, здесь нужно попытаться получить токен или auth заново
                text = 'При попытке отметить записи, как прочитанные возникла ошибка: ' + str(e)
                QMessageBox.warning(self, 'Ошибка', text)
                break
            if progress.wasCanceled():
                break
            qApp.processEvents()

        progress.setValue(count)
        self._ui.twEntries.setCurrentItem(None)
        self.updateDb()
        shouldReturnToDates = (settings.autoSwitchCategories() and
                        self._cbCategories.currentIndex() == 3)
        if shouldReturnToDates:
            self._switchToDates()
        self.splitItemsIntoCategories()
        self._updateWindowTitle()