のようなものを出力するsoup.findAll(text=True)
を呼び出すことができ、テキストTDの子であるアンカーの内側にされています
明らか
print([td.a.text for td in soup.find_all('td', class_='tou')])
ありクラスTOUまたはあなたなしでリストを取得することはないとのTDです:
In [10]: html = """<td class='tou'>
<a href="/analyze/default/index/49398962/1/34925733" target="_blank">
<img alt="" class="ajax-tooltip shadow radius lazy" data-id="acctInfo:34925733_1" data-original="/upload/profileIconId/default.jpg" src="/images/common/transbg.png"/>
Jue VioIe Grace
</a>
</td>"""
In [11]: soup = BeautifulSoup(html,"html.parser")
In [12]: [a.string for a in soup.find_all('td', class_='tou')]
Out[12]: [None]
In [13]: [td.a.text for td in soup.find_all('td', class_='tou')]
Out[13]: [u'\n\n Jue VioIe Grace\n ']
また、TD上の.text呼び出すことができます。
In [14]: [td.text for td in soup.find_all('td', class_='tou')]
Out[14]: [u'\n\n\n Jue VioIe Grace\n \n']
しかし、それは多分あなたが望むよりも多くなるだろう。ペーストビンからあなたの完全なHTML使用して
:この場合
In [18]: import requests
In [19]: soup = BeautifulSoup(requests.get("http://pastebin.com/raw/4mvcMsJu").content,"html.parser")
In [20]: [td.a.text.strip() for td in soup.find_all('td', class_='tou')]
Out[20]:
[u'KElTHMCBRlEF',
u'game 5 loser',
u'Cris',
u'interestingstare',
u'ApoIlo Price',
u'Zary',
u'Adrian Ma',
u'Liquid Inori',
u'focus plz',
u'Shiphtur',
u'Cody Sun',
u'ApoIIo Price',
u'Pobelter',
u'Jue VioIe Grace',
u'Valkrin',
u'Piggy Kitten',
u'1 and 17',
u'BLOCK IT',
u'JiaQQ1035716423',
u'Twitchtv Flaresz']
はtd.text.strip()
はあなたに同じ出力できます:
In [23]: [td.text.strip() for td in soup.find_all('td', class_='tou')]
Out[23]:
[u'KElTHMCBRlEF',
u'game 5 loser',
u'Cris',
u'interestingstare',
u'ApoIlo Price',
u'Zary',
u'Adrian Ma',
u'Liquid Inori',
u'focus plz',
u'Shiphtur',
u'Cody Sun',
u'ApoIIo Price',
u'Pobelter',
u'Jue VioIe Grace',
u'Valkrin',
u'Piggy Kitten',
u'1 and 17',
u'BLOCK IT',
u'JiaQQ1035716423',
u'Twitchtv Flaresz']
をしかし、あなたは違いがあることを理解すべきです。また、我々はアンカーにタグテキストに検索を制限したい場合は.string vs .text
"文字列"を出力にしましたか? 'Jue VioIe Grace'?他に何か? – John1024
「soup.find_all( 'td'、class _ = 'tou') 'が何も見つからなかった場合、出力は「None」 – edsheeran