是否可以在页面上两个字符串之间包含的内容上运行Beautiful Soup?
由于反复使用Yahoo Pipes进行屏幕拼图的限制,我开始使用Beautiful Soup,部分原因是Scraperwiki上提供了托管版本 .
关于Yahoo Pipes中HTML Import块的一个方便之处是,它允许您识别起始字符串和停止字符串,因此您可以限制刮擦页面的特定区域 .
我在美丽的汤中找到了一种刮/来自/特定字符串的方法:
def scrapeFrom(soup,txt,el,attr=''): start=soup.find(text=txt) return start.findAllNext(el,attr)
但是看不到如何转储字符串下游的所有内容?
也就是说,我希望能够说“scrapeFromUntil(soup,fromText,untilText)”并且只在这两个字符串之间刮掉标签?
任何想法如何做到这一点?
1 回答
不完全是您想要的,但根据您的HTML格式,您可能会发现using SoupStrainer to limit parsing to only part of the document非常有用 .