Извините, если вам кажется, что это было задано, но я прочитал связанные вопросы и был совершенно новым для Python. Я не мог найти, как написать этот запрос в чистом виде.Как получить некоторые данные условно с Python и Beautiful Soup
На данный момент у меня есть этот минимальный код Python:
from mechanize import Browser
from BeautifulSoup import BeautifulSoup
import re
import urllib2
br = Browser()
br.open("http://www.atpworldtour.com/Rankings/Singles.aspx")
filename = "rankings.html"
FILE = open(filename,"w")
html = br.response().read();
soup = BeautifulSoup(html);
links = soup.findAll('a', href=re.compile("Players"));
for link in links:
print link['href'];
FILE.writelines(html);
Он извлекает все ссылки, где HREF содержит слово игрока.
Теперь HTML мне нужно разобрать выглядит примерно так:
<tr>
<td>1</td>
<td><a href="/Tennis/Players/Top-Players/Roger-Federer.aspx">Federer, Roger</a> (SUI)</td>
<td><a href="/Tennis/Players/Top-Players/Roger-Federer.aspx?t=rb">10,550</a></td>
<td>0</td>
<td><a href="/Tennis/Players/Top-Players/Roger-Federer.aspx?t=pa&m=s">19</a></td>
</tr>
1-содержит ранг игрока. Я хотел бы иметь возможность получить эти данные в словаре:
- ранга
- имя игрока
- ссылка на детальную страницу (здесь/Теннис/Игроки/Топ-плеер/Roger- Federer.aspx)
Не могли бы вы дать мне несколько указателей или, если это достаточно легко, помогите мне построить кусок кода? Я не уверен, как сформулировать запрос в Beautiful Soup.
Энтони
Спасибо за ваш ответ, я хотел бы подтвердите, но я нахожусь на работе в данный момент, я попробую сегодня вечером и подтвержу ваш ответ! – BlueTrin