Метод findAll() в BeautifulSoup не возвращает все элементы в XML. Если вы посмотрите на приведенный ниже код и откроете URL-адрес, вы увидите, что в XML есть 10 узлов PubmedArticle. Однако метод findAll находит только 6 из них. На выходе только 6* вместо 10. Что я делаю не так?
import urllib2
from bs4 import BeautifulSoup
URL = 'http://www.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&rettype=abstract&id=23858559,23858558,23858557,23858521,23858508,23858506,23858494,23858473,23858461,23858404'
data = urllib2.urlopen(URL).read()
soup = BeautifulSoup(data)
for x in soup.findAll('pubmedarticle'):
print '*'
*
. - person alecxe   schedule 17.07.2013lxml
с BeautifulSoup:soup = BeautifulSoup(data, "lxml")
(убедитесь, чтоlxml
установлен). - person alecxe   schedule 17.07.2013