J'essaie d'obtenir une liste des blessures d'une équipe particulière (liverpool dans ce cas) à partir du site Web suivantGrattage à l'aide soupe Belle conduit à l'erreur que dans une section particulière (objet type_null rencontré)
http://www.physioroom.com/news/english_premier_league/epl_injury_table.php
Il fonctionne très bien avec certaines équipes (Swansea), mais sort avec les erreurs suivantes pour certains (Liverpool, everyon)
TypeError: Can't convert 'NoneType' object to str implicitly
Voici le code que je utilise.
from bs4 import BeautifulSoup
import urllib.request
url = "http://www.physioroom.com/news/english_premier_league/epl_injury_table.php"
html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html, "html.parser")
#lp = soup.find(alt="Liverpool away shirt").parent.parent.parent.next_sibling.next_sibling
lp = soup.find(alt="Swansea City away shirt").parent.parent.parent.next_sibling.next_sibling
player_info = ""
player_list = []
while True:
if(lp.has_attr('id')):
break
else:
tdlist = lp.find_all('td')# player_info = tdlist[0].string+"\t"+tdlist[1].string+"\t"+tdlist[3].string
#print(tdlist[0].find('a').string.strip() + "\t" + tdlist[1].string.strip() + "\t" + tdlist[3].string.strip())
print(tdlist[0].string + "\t" + tdlist[1].string + "\t" + tdlist[3].string)
lp=lp.findNext('tr')
S'il vous plaît laissez-moi savoir comment je peux résoudre ce problème.
Je l'ai corrigé. Ça ne fait rien. Certaines étiquettes contenaient et devaient être traitées différemment. – wolfcubman