Donc j'apprends Python lentement, et j'essaie de faire une fonction simple qui va tirer des données de la page des meilleurs scores d'un jeu en ligne. C'est le code de quelqu'un d'autre que j'ai réécrit en une seule fonction (ce qui pourrait être le problème), mais je reçois cette erreur. Voici le code:Pourquoi je reçois "'ResultSet' n'a aucun attribut 'findAll'" utilisant BeautifulSoup en Python?
>>> from urllib2 import urlopen
>>> from BeautifulSoup import BeautifulSoup
>>> def create(el):
source = urlopen(el).read()
soup = BeautifulSoup(source)
get_table = soup.find('table', {'id':'mini_player'})
get_rows = get_table.findAll('tr')
text = ''.join(get_rows.findAll(text=True))
data = text.strip()
return data
>>> create('http://hiscore.runescape.com/hiscorepersonal.ws?user1=bigdrizzle13')
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
create('http://hiscore.runescape.com/hiscorepersonal.ws?user1=bigdrizzle13')
File "<pyshell#17>", line 6, in create
text = ''.join(get_rows.findAll(text=True))
AttributeError: 'ResultSet' object has no attribute 'findAll'
Merci d'avance.
Pour ce que ça vaut: nommer vos variables "premier", "deuxième", etc. est un style terrible. Vous devriez vraiment être plus descriptif - les noms spécifiques sont à vous, bien sûr, mais je pourrais utiliser "urlcontent", "parser", "mp_tables", et ainsi de suite. –
C'est mon troisième jour avec Python. J'ai besoin de faire ça pour le garder droit dans ma tête. Cela ira mieux au fil du temps ... – Alex
J'ai changé les noms des variables. J'espère que c'est mieux. – Alex