2016-11-20 11 views
1

タグに次のテキストを取得しようとしています。テーブル内のテキストの構文解析が機能しない

<td align="center" valign="top">I AM TRYING TO GET THIS</td> 

これは表であり、この特定のテキストは、特定の行や列ですが、私は列の残りの部分と一緒にこれを取得しようとしています。

私はループのために試してみました、と私もこれを試してみました:

r = driver.get("url") 

htmltext = htmlfile.read() 

regex = '<td align="center" valign="top">(.+?)</td>' 

pattern = re.compile(regex) 

grade = re.findall(pattern,htmltext) 

print(grade) 

私はそれを行うにはBS4の方法を好むだろう。

+0

'requests'は、HTMLの構文解析のためではなく、データを送信するためではありません動作するはずです。 – furas

+0

BeautifulSoup: 'for x in soup.find_all( 'td'):print(x.text.strip())' – furas

+0

htmltext = htmlfile.read()?このhtmlファイルはどこから来たのですか?おそらくそれはr.read()の –

答えて

1

私はそれを確認することはできませんが、それは

import requests 
from bs4 import BeautifulSoup 

url = 'http://www.w3schools.com/html/html_tables.asp' 

r = requests.get(url) 

soup = BeautifulSoup(r.text, 'html.parser') 

for x in soup.find_all('td'): 
    print(x.text.strip()) 
+0

私はこのエラーを取得します:AttributeError: 'NoneType'オブジェクトに属性 'text'がありません – KingPey

+0

これはあなたがページ上の要素を見つけませんでしたが、 'text'を使用していることを意味します。 .text' – furas

+0

要素はありますか?これを修正するためにあなたの答えを編集できますか?どのようにするか知っていますか? – KingPey

関連する問題