0

1000 以上の href リンクを持つ大規模な html Web サイトを解析しています。Beautifulsoup を使用してすべてのリンクを取得していますが、2 回目にプログラムを再度実行すると、beautifulsoup では処理できません。(特定のすべての「td」タグを見つけます。この問題をどのように克服しますか?urllibでhtmlページをロードできますが、すべてのリンクを印刷できません。「td」タグを1つ見つけて使用すると、渡されます。

Tag = self.__Page.find('table', {'class':'RSLTS'}).findAll('td')    
    print Tag           

    for a in Tag.find('a', href= True):
        print "found", a['href']

現在は

Tag = self.__Page.find('table', {'class':'RSLTS'}).find('td')
print Tag

    for a in Tag.find('a', href= True):
        print "found", a['href']
4

1 に答える 1

0

それらを反復する必要があります:

tds = self.__Page.find('table', class_='RSLTS').find_all('td')

for td in tds:
    a = td.find('a', href=True)

    if a:
        print "found", a['href']

あなたがたくさんのものを持っているなら、私はlxmlを使うだけですが:

root.xpath('table[contains(@class, "RSLTS")]/td/a/@href')
于 2013-02-28T01:47:30.747 に答える