Dùng Selectors với Response
Một điểm cần nhấn mạnh về mối quan hệ giữa Selector và Response là cả hai đối tượng đều trả về SelectorList khi bạn dùng các phương thức xpath hoặc css để trỏ tới phần tử. Trong bài này, bạn sẽ kiểm chứng điều đó bằng cách tìm tất cả phần tử liên kết (hyperlink) thuộc class course-block__link (lưu ý có hai dấu gạch dưới!) và quan sát đối tượng được tạo ra.
Hãy nhớ: để tìm phần tử theo class, bạn có thể dùng dấu chấm (.). Ví dụ, div.class-2 sẽ chọn tất cả phần tử div thuộc class class-2.
Chúng tôi đã nạp sẵn một đối tượng Response tên response và một đối tượng Selector tên sel với nội dung từ cùng một trang web "bí mật". Sau khi bạn tạo xong CSS Locator, hãy so sánh đầu ra của response.css và selector.css để thấy rằng chúng thực chất giống nhau!
Bài tập này là một phần của khóa học
Web Scraping với Python
Hướng dẫn bài tập
- Gán cho biến
css_locatormột chuỗi CSS Locator trỏ tới tất cả phần tử liên kếtathuộc classcourse-block__link. - Gán cho biến
response_asđầu ra của việc truyền biếncss_locatorvào phương thứccsscủaresponse. - Gán cho biến
sel_asđầu ra của việc truyền biếncss_locatorvào phương thứccsscủasel.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Create a CSS Locator string to the desired hyperlink elements
css_locator = ____
# Select the hyperlink elements from response and sel
response_as = ____
sel_as = ____
# Examine similarity
nr = len( response_as )
ns = len( sel_as )
for i in range( min(nr, ns, 2) ):
print( "Element %d from response: %s" % (i+1, response_as[i]) )
print( "Element %d from sel: %s" % (i+1, sel_as[i]) )
print( "" )