2012-03-11 18 views
0

ページは:http://item.taobao.com/item.htm?id=13015989524
ソースコードを見ることができます。美味しいスープ - タグが見つからない

そのソースコードは次のコードは、

<a href="http://item.taobao.com/item.htm?id=13015989524" target="_blank"> 

が存在しかし、私は、ソースコードを読み、以下

soup.findAll('a', href="http://item.taobao.com/item.htm?id=13015989524") 

を実行するBeautifulSoupを使用する場合、それは、[]空を返します。それは何を返すのですか?

+0

あなたはあなたのコードのもう少しを示すことができましたか?どのようにURLの内容を取得していますか?あなたがHTMLの中で(BeautifulSoupを使わずに)文字列を見つけようとすると、それはそこにありますか? –

答えて

1

私の知る限り見ることができるように、あなたが見つけようとしている<a>タグが<textarea>タグ内にあります。 BSは<textarea>の内容をHTMLとして解析しません。<textarea>にはHTMLが含まれないようにしてください。要するに、そのページは何かをスケッチしています。

あなたが本当にそれを取得する必要がある場合は、あなたが「カンニング」と再び<textarea>の内容を解析し、その中に検索できます:

import urllib 
from BeautifulSoup import BeautifulSoup as BS 

soup = BS(urllib.urlopen("http://item.taobao.com/item.htm?id=13015989524")) 

a = [] 
for textarea in soup.findAll("textarea"): 
    textsoup = BS(textarea.text) # parse the contents as html 
    a.extend(textsoup.findAll("a", attrs={"href":"http://item.taobao.com/item.htm?id=13015989524"})) 

for tag in a: 
    print tag 

# outputs 
# <a href="http://item.taobao.com/item.htm?id=13015989524" target="_blank"><img ... 
# <a href="http://item.taobao.com/item.htm?id=13015989524" title="901 ... 
+0

ありがとうございますタグは、解析もしていませんか? – ericyue

+0

@ムーンライト:AFAIK、「

0

は、属性を格納するための辞書を使用します。

soup.findAll('a', { 
    'href': "http://item.taobao.com/item.htm?id=13015989524" 
}) 
関連する問題