Vì vậy, tôi đang học Python một cách chậm chạp, và đang cố gắng tạo một hàm đơn giản sẽ thu thập dữ liệu từ trang điểm số cao của trò chơi trực tuyến. Đây là mã của người khác mà tôi viết lại thành một hàm (có thể là vấn đề), nhưng tôi nhận được lỗi này. Đây là mã:Tại sao tôi nhận được "ResultSet" không có thuộc tính 'findAll' "bằng cách sử dụng BeautifulSoup bằng 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'
Xin cảm ơn trước.
Đối với những gì nó có giá trị: đặt tên cho biến của bạn "đầu tiên", "thứ hai", vv là phong cách khủng khiếp. Bạn thực sự nên mô tả hơn - các tên cụ thể tùy thuộc vào bạn, tất nhiên, nhưng tôi có thể sử dụng "urlcontent", "parser", "mp_tables", v.v. –
Ngày thứ ba của tôi với Python. Tôi cần phải làm điều đó để giữ nó thẳng trong đầu tôi. Điều đó sẽ tốt hơn khi thời gian trôi qua ... – Alex
Tôi đã thay đổi tên biến. Hy vọng thats tốt hơn. – Alex