Phiên bản ngắn: Tôi có thể nhận được tin nhắn trò chuyện (sử dụng By.xpath của selenium trong java) nhưng tôi muốn đưa những nụ cười vào đúng vị trí.Selenium - cách lấy phần tử và phần con của nó văn bản
Phiên bản dài hơn: Xin chào, Tôi đã giải quyết vấn đề thú vị này khi tôi cần phân tích tin nhắn trò chuyện từ trình duyệt web và tạo lại nó bằng java và selenium. Tôi đã không có vấn đề phân tích cú pháp văn bản của tin nhắn nhưng tôi muốn phân tích nó với nó subelements (biểu tượng nụ cười) là tốt. Có cách tiếp cận nào tốt cho điều này ngoại trừ phân tích cú pháp mã nguồn thủ công không?
Dưới đây là một mã cho một thông điệp duy nhất mà tôi có thể truy cập:
<div class="chat_msg chat_msg_caller ">
<div class="chat_msg_head">
<span class="chat_msg_author">
SomeAuthor
</span>
<span class="chat_msg_date">
SomeDate
</span>
</div>
<div class="chat_msg_body message_text">
SomeMessageText
<span class="sml-icon biggrin">
<span>
:D
</span>
</span>
SomeOtherText
<span class="sml-icon biggrin">
<span>
:D
</span>
</span>
</div>
</div>
Dưới đây là một ví dụ về cách tôi nhận được tin nhắn văn bản chat:
String msgTxt = we.findElement(By.xpath("//div[@id='messages_body']/div[" + (i + 1) + "]/div[@class='chat_msg_body message_text']")).getText();
My kết quả: SomeMessageText SomeOtherText Kết quả tôi muốn: SomeMessageText: D SomeOtherText: D
file CSS:
http://badoocdn.com/v2/-/-/css/base-ltr.268.css
http://badoocdn.com/v2/-/-/css/page.chat-ltr.22.css
http://badoocdn.com/v2/-/-/css/popup.messenger-ltr.230.css
Cấu trúc:
<div id="messages_body">
<div id="pager" class="pages"> … </div>
<div class="chat_msg chat_msg_caller ">
<div class="chat_msg_head">
<span class="chat_msg_author"> … </span>
<span class="chat_msg_date"> … </span>
</div>
<div class="chat_msg_body message_text"> … </div>
</div>
<div class="me chat_msg chat_msg_owner "> … </div>
<div class="chat_msg chat_msg_caller "> … </div>
<div class="me chat_msg chat_msg_owner "> … </div>
<div class="chat_msg chat_msg_caller "> … </div>
<div class="chat_msg chat_msg_caller "> … </div>
<div class="chat_msg chat_msg_caller "> … </div>
...
Từ đó tôi chỉ nhận được "SomeMessageText SomeOtherText". Đó chính là vấn đề.Tôi muốn có mặt cười ở giữa. – Lenymm
Tôi sẽ chỉnh sửa các quesiton :) – Lenymm