Сценарий Selenium Python работает, но его нельзя щелкнуть или ввести значение firefox - PullRequest
0 голосов
/ 25 марта 2019

Скрипт работает полностью, но не вводит никаких данных.

Вот мой код:

from selenium import webdriver
from selenium.webdriver.support.ui import Select
import datetime
from login_credentials import *
from common_file import *
from selenium.webdriver.firefox.options import Options
from pyvirtualdisplay import Display
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities

start_time = str(sdate)+" "+ str(stime)
end_time = str(edate)+" "+ str(etime)

options = Options()
options.headless = True
driver = webdriver.Firefox(executable_path='/usr/bin/geckodriver',options=options)

driver.get("https://www.goeventz.com/")

driver.find_element_by_xpath("//a[contains(text(),'Login')]").click()
print("going")
#driver.find_element_by_id("userlogin")
driver.find_element_by_id("user_email").send_keys(ge_email)
driver.find_element_by_id("password").send_keys(ge_pswd)
#driver.find_elements_by_class_name(".btn-login").click()
#driver.find_element_by_css_selector('btn-login').click()
driver.find_element_by_xpath("//button[@type='submit']").click()
driver.find_element_by_xpath("//a[contains(text(),'Create Event') and @id='headerbtn']").click()
driver.find_element_by_name("title").clear()
driver.find_element_by_name("title").send_keys(eventname)
driver.find_element_by_xpath("//a[contains(text(),'Enter Address')]").click()
driver.find_element_by_xpath("//input[contains(@name,'venue_name')]").send_keys(full_address)

driver.find_element_by_name("start_date_time").clear()
driver.find_element_by_name("start_date_time").send_keys(start_time)
driver.find_element_by_name("end_date_time").clear()
driver.find_element_by_name("end_date_time").send_keys(end_time)
driver.find_element_by_id("fileToUpload").send_keys("/var/www/html/crons/event_posting/manual/test.jpg")

driver.find_element_by_xpath("//div[contains(@class,'fr-element fr-view')]").send_keys('description')
select = Select(driver.find_element_by_name("booknow_button_value")) 
select.select_by_value('Register')
select = Select(driver.find_element_by_name("category"))
select.select_by_value("Sports")
select = Select(driver.find_element_by_name("othercategory"))
select.select_by_value('Festival') 

driver.find_element_by_name("support_mobile").send_keys(cont_number)
driver.find_element_by_name('support_email').send_keys(email_id)
driver.find_element_by_name("makeeventlive").click()
print("its complted")

и он полностью работает на сервере, это вывод:

enter image description here

но он не вводит никаких данных при условии, что он просто выводит их пустыми

здесь вывод, который я получаю в браузере:

вывод в браузер

это обычный_файл:

from dbconnection import get_conn
from datetime import datetime

connection_object, cursor = get_conn()

json_0 = []
json12_in_list = []
json_12 = []
json34_in_list = []
json_34 = []
json5 = []
json678_in_list = []
json_678 = []
json9 = []
json10 = []
main_json = {}

event_details = ''

with open('event_details.txt', 'r') as f:
event_details = f.read()

event_id = int(event_details.split(',')[0])
site_id = int(event_details.split(',')[1])
site_name = str(event_details.split(',')[2])

#event_id =
sql = """SELECT * FROM articles2 WHERE id ='%d'""" %event_id

cursor.execute(sql)
data = cursor.fetchall()
for info in data:
 eventid = info[0]
 countryname = info[1]
eventname = info[2]
profileimg = info[5]
banner0 = info[6]
sdate = str(info[7])[:10]
edate = str(info[8])[:10]
addr1 = info[9]
addr2 = info[10]
pincode = info[11]
full_address = info[15]
state = info[12]
city = info[13]
stime = str(info[18])

#s_time = datetime.strptime(stime,"%H:%M:%S")
#stime = s_time.strftime("%I:%M:%S %p")

etime = str(info[19])

# e_time = datetime.strptime(etime,"%H:%M:%S")
# etime = e_time.strftime("%I:%M:%S %p")


description = info[20]
src_url = info[26]

json0 = {"event id":eventid, "country":countryname, "event   name":eventname, "profile image":profileimg, "banner":banner0, "start date":sdate,
         "end date":edate, "address 1":addr1, "address 2":addr2, "pincode":pincode, "full address":full_address, "state":state, "city":city,
         "start time":stime, "end time":etime, "description":description, "source url":src_url}
json_0.append(json0)

main_json['event info'] = json_0

#tickets
sql1 = """SELECT * FROM tickets WHERE event_id = '%d'""" %event_id
cursor.execute(sql1)
data1 = cursor.fetchall()
for info1 in data1:
 tktid = info1[0]
 eventid1 = info1[1]
tktname = info1[2]
original_tkt_price = info1[3]
other_charges = info1[4]
other_charges_type = info1[5]
tkt_qty = info1[6]
min_qty = info1[7]
max_qty = info1[8]
qty_left = info1[9]
ticket_msg = info1[10]


ticket_start_date = str(info1[11])[:10]

ticket_start_time = str(info1[11])[11:]





expiry_date = str(info1[12])[:10]
expiry_time = str(info1[12])[11:]

ticket_label= info1[13]
active1 = info1[14]

............................................... ...........................

...