मैं Selenium का उपयोग करके हमारी कंपनी के ईआरपी सिस्टम के अंदर एक खोज टेक्स्ट बॉक्स तक पहुंचने का प्रयास कर रहा हूं। स्क्रीनशॉट टेक्स्ट बॉक्स और तत्व का Xpath दिखाता है।

यह थोड़ा मुश्किल है, क्योंकि वह Menu Search पॉप-अप वास्तव में पॉप-अप नहीं है। यह किसी तरह तब दिखाई देता है जब कोई उपयोगकर्ता Control + M टाइप करता है।

ChroPath स्थापित करके और परीक्षण करके मैंने पाया है कि टेक्स्ट-बॉक्स हमेशा निम्न स्ट्रिंग से शुरू होता है:

txtMenuSearch_Namespace_

मैंने यहां, यहां और यहां बिना किसी किस्मत के।

मेरे कोड के स्निपेट में नवीनतम प्रयास इस तरह दिखता है:

menu_search_input_box_elements = driver.find_elements_by_xpath("//*[contains(@id, ‘txtMenuSearch_Namespace_’)]")
for item in menu_search_input_box_elements:
    print(item)

मुझे निम्न त्रुटि संदेश मिलता है:

SyntaxError: Failed to execute 'evaluate' on 'Document': The string '//*[contains(@id, ‘txtMenuSearch_Namespace_’)]' is not a valid XPath expression.

वाक्य रचना को सही करने के अपने सभी प्रयासों में मुझे यह संदेश मिलता रहता है। इस क्षेत्र में .send_keys() कैसे करें, यह जानने में कोई मदद की बहुत सराहना की जाती है।

enter image description here

0
Python_Learner_DK 20 जिंदा 2020, 19:03

1 उत्तर

सबसे बढ़िया उत्तर

‘’ उद्धरणों के कारण आपको त्रुटि मिलती है, उन्हें सही उद्धरणों से बदलें।

# id starts with txtMenuSearch_Namespace_
menu_search_input_box_elements = driver.find_elements_css_selector("[id^='txtMenuSearch_Namespace_']")


menu_search_input_box_elements = driver.find_elements_by_xpath("//*[contains(@id, 'txtMenuSearch_Namespace_')]")
1
Sers 20 जिंदा 2020, 19:14