Nasıl Selenyum (Python) otomasyon programı içine CSV bilgi aktarmak do?

oy
0

herkes. Ben selenyum kullanarak karartma tarihleri ​​oluşturma işlemini otomatik hale ediyorum. Şu ana kadar, başarıyla yazdım komut dosyası ile bir karartma tarih oluşturmak mümkün. Ne yapmak gerek bu yüzden el ile oluşturulan kesinti tarihleri ​​tüm almak için komut 90 artı kez çalıştırması gerekmez ben programa (farklı tarih ve saat bilgilerinin) bir CSV aldığım bilgi aktarmak mümkün değildir. Kodum (ben gerekli tüm ithalat ve her şey çalışıyor) şu şekildedir:


Creating blackout date w/ settings

dateElem = 
browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[6]/div[1]/div[2]/input')
browser.execute_script(arguments[0].removeAttribute('readonly'), dateElem);
dateElem.clear()
dateElem.send_keys(07/14/2020)

inputElement_HH = browser.find_element_by_id(scanBlackoutHour)
inputElement_HH.send_keys(08)

inputElement_MM = browser.find_element_by_id(scanBlackoutMinute)
inputElement_MM.send_keys(37)

am_or_pm = Select(browser.find_element_by_id(scanBlackoutTimeFrame))
am_or_pm.select_by_index(1)

durationElem = browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[12]/div[6]/input')
durationElem.send_keys('12')

saveElem = browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[17]/div[2]/button')
saveElem.click()
savescanElem = browser.find_element_by_id(btnScanConfigSave).click()

Ben döndürür bu biçimde aşağıdaki bilgileri kullanıyorum CSV dosyası:

['\ufeffDate', 'StartTime (Hour)', 'StartTime (Minute)', 'Timeframe', 'Blackout Duration']
['10/17/2020', '10', '9', 'PM', '10']
['10/20/2021', '11', '5', 'AM', '8']
...

Eğer koduna baktığımızda, sen dateElem, inputElementHH, inputElementMM, am_or_pm ve durationElem send_keys ile ve daha sonra tarih, saat, dakika, PM için 1, süresi süresini görürsünüz. Nasıl bahsettiğim değişkenler için bu send_keys yerlere CSV tarafından oluşturulan listeden verilerini geçirebilirsiniz? Ne başarılı bir Passthrough sonra gibi görünmelidir şudur:

Creating blackout date w/ settings

dateElem = 
browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[6]/div[1]/div[2]/input')
browser.execute_script(arguments[0].removeAttribute('readonly'), dateElem);
dateElem.clear()
dateElem.send_keys(10/17/2020)

inputElement_HH = browser.find_element_by_id(scanBlackoutHour)
inputElement_HH.send_keys(10)

inputElement_MM = browser.find_element_by_id(scanBlackoutMinute)
inputElement_MM.send_keys(9)

am_or_pm = Select(browser.find_element_by_id(scanBlackoutTimeFrame))
am_or_pm.select_by_index(1)

durationElem = browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[12]/div[6]/input')
durationElem.send_keys('10')

saveElem = browser.find_element_by_xpath('/html/body/div[3]/div[1]/div[2]/div[2]/div/div/div/div/ng-include/div/form/fieldset/div[17]/div[2]/button')
saveElem.click()
savescanElem = browser.find_element_by_id(btnScanConfigSave).click()

Ek bir not olarak, Select_by_index o değer için ben geçirildi bir tamsayı değil, bir dize gerekir böylece 0 olmanın AM ve 1 olmak PM ile bir tamsayı olmak. Yine, bu programın ayrı çalışma dönüşümleriyle doğru yerde içine CSV tarafından üretilen her listeden tüm bilgi geçmesine istiyorum. Herhangi bir yardım takdir edilmektedir. Şimdiden teşekkür ederim.

Oluştur 10/10/2019 saat 00:54
kaynak kullanıcı
Diğer dillerde...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more