tôi có mã này mà lấy về một số văn bản từ một trang sử dụng BeautifulSoupPython luận súp đẹp
soup= BeautifulSoup(html)
body = soup.find('div' , {'id':'body'})
print body
tôi muốn thực hiện điều này như một chức năng tái sử dụng mà mất trong một số htmlText và các thẻ để phù hợp với nó như sau
def parse(html, atrs):
soup= BeautifulSoup(html)
body = soup.find(atrs)
return body
Nhưng nếu tôi thực hiện cuộc gọi như thế này
parse(htmlpage, ('div' , {'id':'body'}")) or like
parse(htmlpage, ['div' , {'id':'body'}"])
tôi nhận được chỉ là phần tử div, thuộc tính cơ thể dường như bị bỏ qua.
Có cách nào để sửa lỗi này không?
Cảm ơn câu trả lời của bạn, nó đã hoạt động. Tôi không biết rằng một trong những có thể giải nén danh sách bằng cách sử dụng *, nghĩ rằng chỉ có dicts làm việc như thế bằng cách sử dụng * \ *. – scott
@scott: đọc bài viết Mark được liên kết đến trong câu trả lời của mình –
@EliBendersky Tuyệt vời! Nhưng bất kỳ ý tưởng làm thế nào chúng ta có thể giải nén một khóa từ điển duy nhất (chẳng hạn như "class" trong 'del tag [" class "]')? http://stackoverflow.com/questions/41792761/calling-and-using-an-attribute-stored-in-variable-using-beautifulsoup-4 – JinSnow