I'm currently working on automating entries for this giveaway hosted on:
My progress so far includes successfully clicking on the "Visit @nexi_tech on Instagram" link and the subsequent blue button. I then face an issue when trying to interact with the name and email address text boxes displayed here -> Text boxes I'm trying to access
Upon attempting to fill in these details, I encounter the following error message: selenium.common.exceptions.ElementNotInteractableException: Message: Element is not visible
The following snippet of code showcases my second attempt at resolving this issue (with the initial attempt commented out):
# Python 2.7 Code Snippet
from selenium import webdriver
from bs4 import BeautifulSoup
import time
import numpy as np
import pandas as pd
from selenium.common.exceptions import NoSuchElementException
firefox_profile = webdriver.FirefoxProfile()
# Firefox Profile Configurations
firefox_profile.add_extension('/Users/samer/Downloads/quickjava-2.0.6-fx.xpi')
firefox_profile.set_preference("thatoneguydotnet.QuickJava.curVersion", "2.0.6.1")
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Images", 2)
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.AnimatedImage", 2)
# Other Preferences
# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.CSS", 2)
# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Cookies", 2)
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Flash", 2)
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Java", 2)
# firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.JavaScript", 2)
firefox_profile.set_preference("thatoneguydotnet.QuickJava.startupStatus.Silverlight", 2)
# Logging In
driver = webdriver.Firefox(firefox_profile)
driver.get("https://gleam.io/jtwmn/3d-printer-giveaway")
driver.maximize_window()
window_before = driver.window_handles[0]
time.sleep(3)
driver.find_element_by_css_selector("a.no-underline.enter-link.instagram-border.clearfix.grey-bg.default").click()
time.sleep(3)
driver.find_element_by_css_selector("a.btn.btn-info.btn-large.btn-embossed.ng-binding").click()
time.sleep(3)
window_after = driver.window_handles[1]
# Switch Windows
driver.switch_to_window(window_after)
# Close new tab after a bit
driver.close()
time.sleep(2)
driver.switch_to_window(window_before)
time.sleep(3)
#Fill In details
driver.find_element_by_xpath('//*[@id="contestant[name]"]').send_keys("John")
# Previous Test
# username = driver.find_element_by_id("contestant[name]")
# emailaddress = driver.find_element_by_id("contestant[email]")
# username.send_keys("John")
# emailaddress.send_keys("<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="96fcf9fef8d6f1fbf7fffab8f5f9fb">[email protected]</a>")
time.sleep(5)
#Save Details
driver.find_element_by_css_selector("button.btn.btn-primary.ng-scope").click()
time.sleep(5)
print "Save Complete"
driver.quit()
print "Script Ended"