Cách lấy văn bản cụ thể thuộc về lớp div

0
omneer 2021-01-29 11:17.

<div class="col_5"> 
       <br>
            <i class="phone">
                  :: Before
                  </i>
                  0212 / 897645
            <br>
                  
                  <i class="print">
                  :: Before
                  </i>
                  0212 / 111111
            <br>
       <br>
</div>

Đầu tiên, tôi lấy dữ liệu gettin từ một trang web và áp dụng những dữ liệu này để vượt trội bằng cách sử dụng gấu trúc.

Tôi có một mã html như đã nêu ở trên. Tôi muốn lấy số điện thoại đến sau <i class='phone'>và chuyển cho số kia. Tuy nhiên, số điện thoại không thuộc về lớp tôi nên tôi chỉ có thể lấy các số bằng cách lấy 'xpath' <div class='col_5'>nhưng điều này không an toàn cho tôi vì một số 'div' không có số điện thoại và chỉ có số in và điều này có thể là chết người cho tôi. Ví dụ, tôi cố gắng tìm xpath của <div class='col_5'>như thế

num = browser.find_element_by_xpath('div[1]/div/div[103]/div[2]')
num.text.split('\n')

và đầu ra là

['02243 / 80343', '02243 / 83261']

<div class="col_5"> 
       <br>
            <i class="phone">
                  ::Before
                  </i>
                  
               <br>
                  <i class="print">
                  ::Before
                  </i> 
                  0201 / 623424
               <br>
        <br>
        <a href="mailto:[email protected]"> <i class="envelope"> </i> E-Mail</a>
 </div>

Trên đây mình đã chia sẻ mã không có số điện thoại mà chỉ có số in. Khi tôi nhận được đường dẫn xpath của <div class='col_5'>trong mã thứ hai, tôi chỉ nhận được số in và trong khi những điều này xảy ra, tôi thêm số in dữ liệu của mình làm số điện thoại. Và điều này gây ra dữ liệu không chính xác. Và khi tôi làm những điều chính xác tương tự như đã nêu ở trên, kết quả đầu ra là

['0201 / 623424', '', 'E-Mail']

Vì vậy, khi tôi cố gắng lấy mục đầu tiên, nó sẽ lấy số in. Nếu có số điện thoại, tôi chỉ muốn lấy nó, nếu không, nó và chuyển tiếp. Điều này có thể không

1 answers

1
DebanjanB 2021-01-29 11:42.

Để in văn bản 0212 / 897645, bạn phải tạo ra WebDriverWait cho visibility_of_element_located()và bạn có thể sử dụng một trong những điều sau Chiến lược Locator :

  • Sử dụng CSS_SELECTOR, childNodesstrip():

    print(driver.execute_script('return arguments[0].childNodes[5].textContent;', WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "div.col_5")))).strip())
    
  • Sử dụng XPATH, get_attribute()splitlines():

    print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[1]/div/div[103]/div[2]"))).get_attribute("innerHTML").splitlines()[4])
    
  • Lưu ý : Bạn phải thêm các lần nhập sau:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

Người giới thiệu

Bạn có thể tìm thấy một số cuộc thảo luận chi tiết có liên quan trong:

  • Cách lấy một phần văn bản từ một nút văn bản bằng Selenium và Python
  • Cách lấy văn bản từ các textnodes được phân tách bằng khoảng trắng bằng Selenium và Python

Related questions

MORE COOL STUFF

Vị hôn phu '90 ngày': Yve bị bắt, đối mặt với cáo buộc bạo lực gia đình đối với Mohamed sau bê bối gian lận - Chuyện gì đã xảy ra?

Vị hôn phu '90 ngày': Yve bị bắt, đối mặt với cáo buộc bạo lực gia đình đối với Mohamed sau bê bối gian lận - Chuyện gì đã xảy ra?

Ngôi sao của '90 Day Fiancé 'mùa 9, Yve Arellano đã bị bắt và đang phải đối mặt với cáo buộc lạm dụng trong gia đình với cáo buộc hành hung Mohamed Abdelhamed.

Natasha Lyonne nói Pee-Wee Herman 'Gửi những Gifs đẹp nhất trong Biz'

Natasha Lyonne nói Pee-Wee Herman 'Gửi những Gifs đẹp nhất trong Biz'

Natasha Lyonne thân thiết với chính Pee-Wee Herman, Paul Reubens. Khám phá những gì cô ấy nói về tình bạn của họ.

Phần cuối xoắn của 'Chỉ có những kẻ giết người trong tòa nhà' Phần 2 tiết lộ ai đã giết Bunny Folger

Phần cuối xoắn của 'Chỉ có những kẻ giết người trong tòa nhà' Phần 2 tiết lộ ai đã giết Bunny Folger

Phần cuối mùa 2 của 'Chỉ những kẻ giết người trong tòa nhà' cuối cùng đã tiết lộ ai đã giết Bunny Folger - tìm ra kẻ chịu trách nhiệm.

Xem thêm Phim truyền hình Boatmance 'Below Deck Med': Bây giờ Natalya là Ghosting Storm?

Xem thêm Phim truyền hình Boatmance 'Below Deck Med': Bây giờ Natalya là Ghosting Storm?

Bộ phim truyền hình chèo thuyền 'Below Deck Med' thậm chí còn kỳ lạ hơn vì bây giờ Natalya quyết định làm ma Storm để anh ta tự hỏi anh ta đã làm gì.

The Secrets of Airline Travel Quiz

The Secrets of Airline Travel Quiz

Air travel is far more than getting from point A to point B safely. How much do you know about the million little details that go into flying on airplanes?

Reign of Terror: Câu chuyện bị lãng quên về những vụ giết người của bộ tộc Osage

Reign of Terror: Câu chuyện bị lãng quên về những vụ giết người của bộ tộc Osage

Các thành viên của Bộ lạc Osage một số người giàu nhất trên Trái đất vào khoảng năm 1920. Sau đó, họ bắt đầu chết một cách bí ẩn. Ai đã giết họ và dầu có liên quan gì đến nó?

Where in the World Are You? Take our GeoGuesser Quiz

Where in the World Are You? Take our GeoGuesser Quiz

The world is a huge place, yet some GeoGuessr players know locations in mere seconds. Are you one of GeoGuessr's gifted elite? Take our quiz to find out!

8 công dụng tuyệt vời của Baking Soda và Giấm

8 công dụng tuyệt vời của Baking Soda và Giấm

Bạn biết đấy, hai sản phẩm này là nguồn điện để làm sạch, riêng chúng. Nhưng cùng với nhau, chúng có một loạt công dụng hoàn toàn khác.

Đây là những gì Donald Trump nên yêu cầu trong cuộc tranh luận tiếp theo

Đây là những gì Donald Trump nên yêu cầu trong cuộc tranh luận tiếp theo

Ông Donald Trump không hài lòng với các quy tắc cho cuộc tranh luận tiếp theo của đảng Cộng hòa, vì vậy ông có thể sẽ tẩy chay nó. lập kế hoạch về việc thiết lập thời hạn cho buổi tối.

Donald Trump về vụ bắn súng ở Oregon: 'Kết quả sẽ tốt hơn' nếu ai đó 'có súng'

Donald Trump về vụ bắn súng ở Oregon: 'Kết quả sẽ tốt hơn' nếu ai đó 'có súng'

Donald Trump, người vẫn dẫn đầu cuộc bầu cử sơ bộ tổng thống của đảng Cộng hòa một cách khó hiểu, “đôi khi” mang theo một khẩu súng. Trong một cuộc phỏng vấn với Face the Nation của CBS, Trump thừa nhận rằng ông có giấy phép vũ khí được che giấu, nói thêm: “Tôi sẽ nói với bạn, tôi cảm thấy tốt hơn nhiều khi được trang bị vũ khí.

Bạo loạn và bức ảnh khiến người đi xe đạp trở thành vòng cấm

Bạo loạn và bức ảnh khiến người đi xe đạp trở thành vòng cấm

Vào cuối tuần thứ 4 của tháng 7 năm 1947, Hiệp hội Tay đua Mô tô Hoa Kỳ đã lăn bánh đến thị trấn nông trại ngủ yên của Hollister, California. Vào thời điểm nó ra mắt, không có gì sẽ trở lại giống như vậy đối với những người lái xe mô tô, những người mà những người không đi xe sau này sẽ mãi mãi nhìn qua một ống kính bị che phủ bởi da đen, những chiếc Harleys lớn, bia và những hành vi xấu.

Giám đốc điều hành Cadillac: Sẽ không ai mua xe sedan của chúng tôi vì thanh thiếu niên và cơ sở hạ tầng

Giám đốc điều hành Cadillac: Sẽ không ai mua xe sedan của chúng tôi vì thanh thiếu niên và cơ sở hạ tầng

Cadillac, hoàn toàn có thể, là nhà sản xuất ô tô không may mắn nhất ở thời điểm hiện tại. Khi các đối thủ của nó đang đạt được những bước tiến lớn, Cadillac có cảm giác như nó luôn bắt kịp những gì mọi người đã làm cách đây 5 năm.

Demi Lovato chia sẻ lời khuyên mà cô dành cho các ngôi sao trẻ của Disney hôm nay: 'Hãy bình tĩnh'

Demi Lovato chia sẻ lời khuyên mà cô dành cho các ngôi sao trẻ của Disney hôm nay: 'Hãy bình tĩnh'

Demi Lovato nói về những ngày ở Disney của cô ấy: “Tất cả chúng tôi đều làm việc rất chăm chỉ

Dưa hấu bẹp dúm trong tai nạn Được quyên góp cho Tổ chức cứu hộ động vật hoang dã cho các loài động vật vui vẻ và ngậm nước

Dưa hấu bẹp dúm trong tai nạn Được quyên góp cho Tổ chức cứu hộ động vật hoang dã cho các loài động vật vui vẻ và ngậm nước

Yak's Produce đã tặng hàng chục quả dưa bị bán cho chuyên gia cai nghiện động vật hoang dã Leslie Green và 42 động vật sống trong cuộc giải cứu Louisiana của cô ấy

Demi Lovato đang có 'mối quan hệ hạnh phúc và lành mạnh' với bạn trai nhạc sĩ mới: Nguồn

Demi Lovato đang có 'mối quan hệ hạnh phúc và lành mạnh' với bạn trai nhạc sĩ mới: Nguồn

Demi Lovato - người đang chuẩn bị cho việc phát hành album phòng thu thứ tám của cô ấy - đang hẹn hò với một "anh chàng siêu tuyệt vời", một nguồn tin xác nhận với NGƯỜI DÂN

Edwin McCain ra mắt Grand Ole Opry: Quay cảnh hậu trường với nhạc sĩ 'I'll Be'

Edwin McCain ra mắt Grand Ole Opry: Quay cảnh hậu trường với nhạc sĩ 'I'll Be'

McCain, người đang làm việc cho một album mới, lần đầu tiên bước vào vòng kết nối vào tối thứ Sáu ở Nashville

Khắc phục lũ lụt

Khắc phục lũ lụt

Chúng tôi đã bùng cháy trong vài tuần nay, bay với vận tốc 3/4 g mát trong không gian hướng tới một khu vực giữa Sao Thiên Vương và Sao Hải Vương. Một thứ mà các nhà khoa học trên Dawson Trawler gọi là cổng Yggdrasil.

Những điều không đẹp

Những điều không đẹp

Là một phụ nữ, tôi thường do dự khi tham gia vào các mối quan hệ; Tôi luôn đấu tranh để không đánh mất mình trong họ. Tôi phải chống lại sự thôi thúc muốn chia sẻ quá mức với ai đó, chống lại ý nghĩ rằng cần ai đó nhìn thấy tôi để làm cho tôi vững chắc.

Công văn từ một người phụ nữ đang chạy trốn

Không nơi nào cảm thấy giống như ở nhà khi bạn cần nhà nhất.

Công văn từ một người phụ nữ đang chạy trốn

Tôi đã di chuyển nhiều hơn hầu hết. Trên khu đất nơi bố tôi sống, có một đường đua thu nhỏ, nơi ông ấy sẽ phá vỡ những cây khao khát.

Bài học cuộc sống tuyệt vời nhất mà tôi học được từ một người đàn ông sắp chết

Anh ấy đã học quá muộn rằng tất cả những gì chúng ta có là giây phút hiện tại này.

Bài học cuộc sống tuyệt vời nhất mà tôi học được từ một người đàn ông sắp chết

Brad bước vào phòng ngủ trong trang phục quần đùi kaki và áo sơ mi polo, găng tay chơi gôn màu trắng vẫn kéo cao trên cả hai tay. Với một nụ cười toe toét trên khuôn mặt, anh ấy nói, "Bạn biết đấy, tôi nghĩ đây là năm tuyệt vời nhất trong cuộc đời tôi!" Thông thường, những người chi tiêu dè dặt, chúng tôi đã làm một điều gì đó ngoài chuẩn mực.

Language