コード例 #1
0
    def journal_id(self):
        """
        Query the journal id.

        Returns: str
        """

        return get_text(self.xml, 'journal-id')
コード例 #2
0
    def article_title(self):
        """
        Query the article title.

        Returns: str
        """

        return get_text(self.xml, 'article-title')
コード例 #3
0
    def journal_title(self):
        """
        Query the journal title.

        Returns: str
        """

        return get_text(self.xml, 'journal-title')
コード例 #4
0
    def publisher_name(self):
        """
        Query the publisher name.

        Returns: str
        """

        return get_text(self.xml, 'publisher-name')
コード例 #5
0
    def volume(self):
        """
        Query the volume number.

        Returns: str
        """

        return get_text(self.xml, 'volume')
コード例 #6
0
    def article_id(self):
        """
        Query the article id.

        Returns: str
        """

        return get_text(self.xml, 'article-id')
コード例 #7
0
    def issue(self):
        """
        Query the issue number.

        Returns: str
        """

        return get_text(self.xml, 'issue')
コード例 #8
0
    def volume(self):

        """
        Query the volume number.

        Returns: str
        """

        return get_text(self.xml, 'volume')
コード例 #9
0
    def publisher_name(self):

        """
        Query the publisher name.

        Returns: str
        """

        return get_text(self.xml, 'publisher-name')
コード例 #10
0
    def journal_title(self):

        """
        Query the journal title.

        Returns: str
        """

        return get_text(self.xml, 'journal-title')
コード例 #11
0
    def journal_id(self):

        """
        Query the journal id.

        Returns: str
        """

        return get_text(self.xml, 'journal-id')
コード例 #12
0
    def article_title(self):

        """
        Query the article title.

        Returns: str
        """

        return get_text(self.xml, 'article-title')
コード例 #13
0
    def article_id(self):

        """
        Query the article id.

        Returns: str
        """

        return get_text(self.xml, 'article-id')
コード例 #14
0
    def issue(self):

        """
        Query the issue number.

        Returns: str
        """

        return get_text(self.xml, 'issue')
コード例 #15
0
    def pub_date(self):
        """
        Assemble the publication date in ISO format.

        Returns: str
        """

        try:

            date = datetime.date(
                int(get_text(self.xml, 'pub-date year')),
                int(get_text(self.xml, 'pub-date month')),
                int(get_text(self.xml, 'pub-date day')),
            )

            return date.isoformat()

        except:
            return None
コード例 #16
0
    def pub_date(self):

        """
        Assemble the publication date in ISO format.

        Returns: str
        """

        try:

            date = datetime.date(
                int(get_text(self.xml, 'pub-date year')),
                int(get_text(self.xml, 'pub-date month')),
                int(get_text(self.xml, 'pub-date day')),
            )

            return date.isoformat()

        except:
            return None
コード例 #17
0
    def surname(self):
        """
        Get the surname of the first author.

        Returns: str
        """

        authors = self.xml.select('contrib')

        if authors:
            return get_text(authors[0], 'surname')
コード例 #18
0
    def surname(self):

        """
        Get the surname of the first author.

        Returns: str
        """

        authors = self.xml.select('contrib')

        if authors:
            return get_text(authors[0], 'surname')
コード例 #19
0
    def pagination(self):
        """
        Construct the page range.

        Returns: str
        """

        fpage = get_text(self.xml, 'fpage')
        lpage = get_text(self.xml, 'lpage')

        if fpage and lpage:
            return '-'.join([fpage, lpage])

        elif fpage:
            return fpage

        elif lpage:
            return lpage

        else:
            return None
コード例 #20
0
    def pagination(self):

        """
        Construct the page range.

        Returns: str
        """

        fpage = get_text(self.xml, 'fpage')
        lpage = get_text(self.xml, 'lpage')

        if fpage and lpage:
            return '-'.join([fpage, lpage])

        elif fpage:
            return fpage

        elif lpage:
            return lpage

        else:
            return None
コード例 #21
0
    def authors(self):
        """
        Query author names.

        Returns: list
        """

        author = []
        for c in self.xml.select('contrib'):

            # Query for name parts.
            given_names = get_text(c, 'given-names')
            surname = get_text(c, 'surname')

            # Merge into single string.
            if given_names and surname:
                author.append(', '.join([surname, given_names]))

            # Accept just surname.
            elif surname:
                author.append(surname)

        return author
コード例 #22
0
    def authors(self):

        """
        Query author names.

        Returns: list
        """

        author = []
        for c in self.xml.select('contrib'):

            # Query for name parts.
            given_names = get_text(c, 'given-names')
            surname = get_text(c, 'surname')

            # Merge into single string.
            if given_names and surname:
                author.append(', '.join([surname, given_names]))

            # Accept just surname.
            elif surname:
                author.append(surname)

        return author
コード例 #23
0
def test_get_text(tag, text):
    tree = BeautifulSoup(tag, 'lxml')
    assert get_text(tree, 'tag') == text
コード例 #24
0
def test_get_text(tag, text):
    tree = BeautifulSoup(tag, 'lxml')
    assert get_text(tree, 'tag') == text