【发布时间】:2015-07-19 14:51:03
【问题描述】:
在 python 中使用漂亮的汤,我希望能够从在线排序表中获取特定文本<a>/numbers<td>。
我已经尝试了大约一百万次,但无法弄清楚。
这是我能做的最好的:
from bs4 import BeautifulSoup
import urllib2
import requests
import pymongo
import re
soup = BeautifulSoup(urllib2.urlopen('http://www.nfl.com/stats/categorystats?archive=false&conference=null&role=OPP&offensiveStatisticCategory=null&defensiveStatisticCategory=INTERCEPTIONS&season=2014&seasonType=REG&tabSeq=2&qualified=false&Submit=Go').read())
find = soup('a', text="Miami Dolphins")
print find
我不知道如何在迈阿密海豚队之后找到/调用第 10 个(python 中的第 9 个)
表格代码如下所示:
<table id="result" style="width:100%" cellpadding="0" class"data-table1"
cellspacing="0">
<caption class="thd1">...</caption>
<tbody>...</tbody>
<tbody>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">...</tr>
<tr class="odd">...</tr>
<tr class="even">
<td>14</td>
<td>
<a href="/teams/miamidolphins/profile?team=MIA onclick=
"s_objectID="http://www.nfl.com/teams.miamidolphins/profile?
team=MIA_1";return this.s_oc?this.s_oc(e):true">Miami Dolphins</a> *********I want to grab team name**********
</td>
<td>
16
</td>
<td>24.2</td>
<td>
388
</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="sorted right">...</td>
"
14 ****I want to grab 10th number/<td> tag after team name****
"
</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td>
<td class="right">...</td
</tr>
【问题讨论】:
标签: python web-scraping beautifulsoup html-table