def get_primary_text(self, item_url):
        """ Retrieve the primary text for the given item from the cache.

        :type item_url: String or Item
        :param item_url: the URL of the item, or an Item object

        :rtype: String
        :returns: the primary text

        :raises: ValueError if the primary text is not in the cache


        """
        c = self.conn.cursor()
        c.execute("SELECT * FROM primary_texts WHERE item_url=?",
                      (str(item_url),))
        row = c.fetchone()
        c.close()
        if row is None:
            raise ValueError("Item not present in cache")
        return row[1]
Retrieve the primary text for the given item from the cache.

        :type item_url: String or Item
        :param item_url: the URL of the item, or an Item object

        :rtype: String
        :returns: the primary text

        :raises: ValueError if the primary text is not in the cache