I'm trying to automate a messaging system on Etsy and am running into trouble with my code. I receive error messages that the reCaptcha element can't be found, which I think means that my code didn't successfully click the messaging button in the first place.
I've tried using xpath, id, class names, etc but I still can't figure out how to click the "message button".
here's the Messaging Button and the Messaging Interface
url = 'https://www.etsy.com/sg-en/listing/794585057/lavender-chamomile-shower-steamers-sleep?ga_order=most_relevant&ga_search_type=all&ga_view_type=gallery&ga_search_query=green+beauty&ref=sc_gallery-1-2&plkey=2bab0193d5d13095397b2acdab033b78a0d0f30b%3A794585057&cns=1'
wd.get(url)
last_height = wd.execute_script("return document.documentElement.scrollHeight;")
time.sleep(3)
#loading the page
wd.execute_script('window.scrollTo(0, arguments[0]);',last_height/3)
time.sleep(3)
wd.execute_script('window.scrollTo(0, arguments[0]);',last_height/3 + last_height/3)
time.sleep(3)
wd.execute_script('window.scrollTo(0, arguments[0]);',last_height)
time.sleep(3)
#clicking on the "Message Seller" button
html = wd.page_source
wd.find_element_by_xpath("//*[@id='desktop_shop_owners_parent']/div/a").click()
time.sleep(3)
#clicking on the reCaptcha button
wd.find_element_by_id("recaptcha-anchor").click()
time.sleep(1)
#typing in a test message
open_message = wd.find_element_by_xpath("//*[@id='chat-ui-composer']/div[1]/div[1]/textarea").click()
open_message.sendKeys('hi (-: ')
wd.find_element_by_xpath("//*[@id='chat-ui composer']/div[1]/div[2]/button").click()
#marker to show that message has been sent
brand = wd.find_element_by_xpath("//*[@id='desktop_shop_owners_parent']/div/div/div[2]/p[1]").text
print('messaged: ' + brand)
wd.quit()
Would really appreciate any help!
question from:
https://stackoverflow.com/questions/65939965/selenium-webdriver-cant-click-button 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…