Существует сайт, который содержит статистику по футболу (футбол), я нахожу, что внутренняя опция запроса данных ограничивает и хочет выполнить мой собственный анализ, но делать поэтому я должен очистить данные - я использую Beautiful Soup 4.Веб-скребок с BS4: не удалось найти тег
Документация не найдена here.
Согласно документации Beautiful Soup, я могу найти конкретный тег, используя find_all(), однако, когда я пытаюсь его использовать, он появляется для пробела.
из urllib.request импорта urlopen из BS4 импорта BeautifulSoup импорта CSV в CSV
html = urlopen("http://members.fantasyfootballscout.co.uk/player-stats/goalkeepers/")
bsObj = BeautifulSoup(html.read(), "lxml")
Предположительно, будучи за стеной зарплаты вы не сможете получить к нему доступ. Имея это в виду, я опубликую фрагмент кода.
<tbody>
<tr>
<td><input type="checkbox" name="players[]" value="61302"></td>
<td class="first">
<a href="/player-profiles/ryan-allsopp/" class="enhanced-title" title="Ryan Allsopp"> Allsopp </a>
<div class="profile-title">
<img src="/images/players/small/default.png" alt="" width="42" height="64">
<br>Ryan Allsopp <br> (Bournemouth, Goalkeeper)
</div>
</td>
<td class="nowrap">
<span class="team-disc bou-light"></span>
<a href="/player-stats/goalkeepers/fantasy-index/bournemouth/" title="Bournemouth"> BOU</a>
</td>
<td title="Starts: 0">0</td>
<td title="Time Played: 54"> 54</td>
<td title="Subbed On: 1">1</td>
<td title="Subbed Off: 0"> 0</td>
<td title="Goals: 0"> 0 </td>
<td title="Assists: 0"> 0 </td>
<td title="Clean Sheets: 0">0 </td>
<td title="Goals Conceded: 1"> 1 </td>
<td title="Own Goals: 0"> 0 </td>
<td title="Saves: 0"> 0 </td>
<td title="Premier League Yellow Cards: 0"> 0</td>
<td title="Premier League Total Red Cards: 0"> 0 </td>
</tr>
<tr>
<td><input type="checkbox" name="players[]" value="57187"></td>
Для начала я хочу, чтобы вывести все данные таблицы, но у меня возникают проблемы идентификации даже один тд в БС.
bsObj.td # returns empty set
bsobj.find_all('td') # returns empty set
Куда я иду не так?
Вы упомянули paywall. Вы уверены, что ваш код Python может получить доступ к этой странице? Вы пытались 'print (html.read())'? –
Вы должны переформатировать свой HTML-текст, он очень не читается. – ffledgling
@OmarShehata: b '' –