Tôi đang cố trích xuất nội dung của một thuộc tính "giá trị" duy nhất trong thẻ "đầu vào" cụ thể trên trang web. Tôi sử dụng đoạn mã sau:Trích xuất một giá trị thuộc tính với beautifulsoup
import urllib
f = urllib.urlopen("http://58.68.130.147")
s = f.read()
f.close()
from BeautifulSoup import BeautifulStoneSoup
soup = BeautifulStoneSoup(s)
inputTag = soup.findAll(attrs={"name" : "stainfo"})
output = inputTag['value']
print str(output)
tôi nhận được một Lỗi Loại: danh sách chỉ số phải là số nguyên, không str
mặc dù từ tài liệu BeautifulSoup tôi hiểu rằng dây không phải là một vấn đề ở đây ... nhưng Tôi không có chuyên gia và tôi có thể đã hiểu lầm.
Bất kỳ đề xuất nào được đánh giá cao! Cảm ơn trước.
Công cụ tuyệt vời! Cảm ơn. bây giờ tôi có một câu hỏi về phân tích cú pháp đầu ra mà tôi một bó dài của ký tự không phải ASCII nhưng tôi sẽ hỏi điều này trong một câu hỏi riêng biệt. – Barnabe
không nên truy cập 'giá trị' theo http://stackoverflow.com/questions/2616659/extracting-value-in-beautifulsoup. Điều gì làm cho mã trên hoạt động trong trường hợp này? Tôi nghĩ bạn sẽ phải truy cập vào giá trị bằng cách thực hiện 'output = inputTag [0].content' – Seth
@Seth - không, bởi vì anh ta đang tìm kiếm giá trị attrib 'của thẻ đầu vào', và .contents trả về văn bản được đóng gói bởi thẻ ( Tôi .contents) - (chỉ trả lời ngay bây giờ vì tôi phải tăng gấp đôi kiểm tra những gì đang diễn ra; tìm một người khác có thể có lợi) –