Я пытаюсь очистить несколько страниц одного сайта, чтобы BeautifulSoup проанализировал.До сих пор я пытался использовать urllib2 для этого, но столкнулся с некоторыми проблемами.Я попытался:
import urllib2,sys
from BeautifulSoup import BeautifulSoup
for numb in ('85753', '87433'):
address = ('http://www.presidency.ucsb.edu/ws/index.php?pid=' + numb)
html = urllib2.urlopen(address).read()
soup = BeautifulSoup(html)
title = soup.find("span", {"class":"paperstitle"})
date = soup.find("span", {"class":"docdate"})
span = soup.find("span", {"class":"displaytext"}) # span.string gives you the first bit
paras = [x for x in span.findAllNext("p")]
first = title.string
second = date.string
start = span.string
middle = "\n\n".join(["".join(x.findAll(text=True)) for x in paras[:-1]])
last = paras[-1].contents[0]
print "%s\n\n%s\n\n%s\n\n%s\n\n%s" % (first, second, start, middle, last)
Это дает мне результаты только для второго числа в последовательности numb
, то есть http://www.presidency.ucsb.edu/ws/index.php?pid=87433. Я также предпринял несколько попыток использования механизации, но имелнет успехаВ идеале я хотел бы иметь страницу со списком ссылок, а затем автоматически выбирать ссылку, передавать HTML-код BeautifulSoup и затем переходить к следующей ссылке в списке.