def search(self): if self.database == 'PubMed': from Bio import PubMed from Bio import GenBank searchIds = PubMed.search_for(self.searchTerm, max_ids=self.maxResults) GBrecParser = GenBank.FeatureParser() ncbiDict = GenBank.NCBIDictionary(self.type, 'genbank', parser=GBrecParser) from Bio import Medline MLrecParser = Medline.RecordParser() medlineDict = PubMed.Dictionary(delay=1.0, parser=MLrecParser) for id in searchIds: MLrecord = medlineDict[id] GBrecord = ncbiDict[id] newDBItem = DBItem(self.project, seq=GBrecord.seq, descript=GBrecord.description, id=id, record=MLrecord) self.items[id] = newDBItem
"""Example script showing how to interact with PubMed.""" # standard library import string # biopython from Bio import PubMed from Bio import Medline # do the search and get the ids search_term = 'orchid' orchid_ids = PubMed.search_for(search_term) print orchid_ids # access Medline through a dictionary interface that returns PubMed Records rec_parser = Medline.RecordParser() medline_dict = PubMed.Dictionary(parser=rec_parser) for id in orchid_ids[0:5]: cur_record = medline_dict[id] print 'title:', string.rstrip(cur_record.title) print 'authors:', cur_record.authors print 'source:', string.strip(cur_record.source) print