SORU
20 Aralık 2009, Pazar


Görünür Bir Web Sayfası Metin BeautifulSoup Al

Temelde, kullanmak istiyorum BeautifulSoup için al kesinlikle görünür metin üzerinde bir web sayfası... mesela, bu web sayfası benim test çalışması http://www.nytimes.com/2009/12/21/us/21storm.html .. Ve ben özellikle istiyorum sadece gövde metin (yazı) ve belki de bir kaç sekme adlarını burada ve orada. Ancak bu öneri http://stackoverflow.com/questions/1752662/beautifulsoup-easy-way-to-to-obtain-html-free-contents ^ denedikten sonra . ihtiyacım olan tek yapmam gereken findAll için doğru argümanlar ne olduğunu çözemedim.. gerekli olmayan html etiketleri ve açıklamaları çok (http://www.crummy.com/software/BeautifulSoup/documentation.html#arg-limit)... döndürür

Nasıl görünür tüm metin/HTML/önemsiz...vb komut açıklamaları hariç bulayım.. ??

CEVAP
31 Aralık 2009, PERŞEMBE


Bunu deneyin:

html = urllib.urlopen('http://www.nytimes.com/2009/12/21/us/21storm.html').read()
soup = BeautifulSoup(html)
texts = soup.findAll(text=True)

def visible(element):
    if element.parent.name in ['style', 'script', '[document]', 'head', 'title']:
        return False
    elif re.match('<!--.*-->', str(element)):
        return False
    return True

visible_texts = filter(visible, texts)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Feel The Electricity!

    Feel The Ele

    20 ŞUBAT 2010
  • Kat Krazy

    Kat Krazy

    12 Kasım 2010
  • Xcode programming tutorials

    Xcode progra

    17 EYLÜL 2006