1

さて、ここにサイトからテキストコンテンツをスクレイピングするための私のコードがあります....プレーンテキストしか取得していませんが、うまく機能しています....それを処理する方法

    from bs4 import BeautifulSoup
import mechanize
def getArticle(url):
        br = mechanize.Browser()
        htmltext = br.open(url).read()
        soup = BeautifulSoup(htmltext)
        for tag in soup.findAll('span',{'itemprop':'articleBody'}):
                print tag.contents

たとえば、サイトをこするとき。私はこの出力を得る

"[u"\nソビエト ロシアでは、顧客の請求書を支払うのは銀行です。\xa0または、少なくとも 1 つ可能性があります。",
, u'\n',
, u'\r\nヴォロネジで興味深い事件が発生しました。ロシアでは、ある男性が、銀行が署名し承認した手作りの文書をめぐって、2,400 万ロシア ルーブル (約 727,000 ドル) 以上の賠償金を求めて銀行を訴えています。\xa0',
, u'\n',
, u'\ r\nDmitry Alexeev という名前の人 (彼の苗字は ',この記事を公開した最初のロシアのメディア , u' によって変更されました) は、2008 年に ', Tinkoff Credit Systems , u'\xa0から手紙を受け取ったと述べています。同意書が同封されたクレジットカード申込書でしたが、アメリカ人が毎日、さまざまな銀行から受け取る申し込みと同じように、ビザ

プレーンテキストのみを取得するには?

4

1 に答える 1

2

tag.textの代わりに使用tag.contents:

from bs4 import BeautifulSoup
import mechanize

url = "http://www.minyanville.com/business-news/editors-pick/articles/A-Russian-Bank-Is-Sued-for/8/7/2013/id/51205"
br = mechanize.Browser()
htmltext = br.open(url).read()
soup = BeautifulSoup(htmltext)
for tag in soup.findAll('span',{'itemprop':'articleBody'}):
    print tag.text
于 2013-08-08T07:12:57.303 に答える