/ / Beautiful Soup - Wyszukiwanie między dwiema częściami dokumentu - beautifulsoup

Piękna zupa - wyszukiwanie między dwiema częściami dokumentu - beautifulsoup

Czy można po prostu uruchomić piękną zupę nad zawartością zawartą między dwoma łańcuchami na stronie?

Wielokrotnie przeciwstawiając się ograniczeniom związanym z używaniem Yahoo Pipes do wygaszania ekranu, zacząłem używać Beautiful Soup, częściowo dlatego, że hostowana wersja jest dostępna na Scraperwiki.

Jedną z przydatnych rzeczy w bloku importu HTML w Yahoo Pipes jest to, że pozwala on zidentyfikować ciąg początkowy i ciąg zatrzymania, dzięki czemu można ograniczyć zeskrobanie do określonego regionu strony.

Znalazłem sposób na skrobanie / z / określonego ciągu w Pięknej zupie:

def scrapeFrom(soup,txt,el,attr=""):
start=soup.find(text=txt)
return start.findAllNext(el,attr)

ale czy nie widzi, jak zrzucić wszystko w dół łańcucha?

To znaczy, chcę móc powiedzieć „scrapeFromUntil (zupa, fromText, untilText)” i tylko zeskrobać tagi między tymi dwoma ciągami?

Wszelkie pomysły, jak to zrobić?

Odpowiedzi:

0 dla odpowiedzi № 1

Nie do końca to, czego chciałeś, ale w zależności od formatu twojego HTML możesz znaleźć użycie SoupStrainer do ograniczenia parsowania tylko do części dokumentu przydatny.