from select import select
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.alert import Alert
from selenium.webdriver.support.ui import Select
import pandas as pd
import time
driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://mallbo.epost.go.kr')
time.sleep(5)
e = driver.find_element_by_xpath('//*[@id="id"]')
e.send_keys('jwhan311')
e = driver.find_element_by_xpath('//*[@id="pw"]')
e.send_keys('posa02144!')
e = driver.find_element_by_id('login_btn')
e.click()
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="M2138"]/a')
e.click()
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="M2185"]/a')
e.click()
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="M2186"]/a')
e.click()
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="couponRegistPage"]')
e.click()
time.sleep(1)
df1 = pd.read_csv('./temp.csv',encoding='UTF-8')
print(df1)
time.sleep(1)
for i in range(len(df1)):
driver.find_element_by_xpath('//*[@id="title"]').send_keys('쇼핑25시쿠폰 '+df1.iat[i,1])
driver.find_element_by_xpath('//*[@id="memo"]').send_keys(df1.iat[i,1]+' / '+df1.iat[i,0])
driver.find_element_by_xpath('//*[@id="cpCmpCd_3"]').click()
driver.find_element_by_xpath('//*[@id="Pm_popup"]').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[1])
select=Select(driver.find_element_by_xpath('//*[@id="searchType"]'))
select.select_by_value('02')
driver.find_element_by_xpath('//*[@id="search_text"]').send_keys(str(df1.iat[i,2]))
driver.find_element_by_xpath('//*[@id="search_btn"]').click()
time.sleep(1)
driver.find_element_by_xpath('//*[@id="1"]').click()
driver.find_element_by_xpath('//*[@id="btnInput"]').click()
driver.switch_to.window(driver.window_handles[0])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="cpnIssueMethCd_C"]').click()
driver.find_element_by_xpath('//*[@id="compnoIssueYn_Y"]').click()
driver.find_element_by_xpath('//*[@id="compnoMaxIssueCnt"]').send_keys('9999')
driver.find_element_by_xpath('//*[@id="cpnGoodsAppnCd_G"]').click()
driver.find_element_by_xpath('//*[@id="cpnApplyCntCd_2"]')
if df1.iat[i,3] == True:
driver.find_element_by_xpath('//*[@id="dcDivCd_2"]').click()
driver.find_element_by_xpath('//*[@id="rateType"]').send_keys(str(df1.iat[i,4]).strip().replace('%',''))
else:
driver.find_element_by_xpath('//*[@id="amount"]').send_keys(str(df1.iat[i,4]).strip().replace(',',''))
driver.find_element_by_xpath('//*[@id="btnRegist"]').click()
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
driver.find_element_by_xpath('//*[@id="1"]/td[14]/a').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[1])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="btnSearchText"]').click()
driver.switch_to.window(driver.window_handles[2])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="search_text_arr"]').send_keys(df1.iat[i,5])
driver.find_element_by_xpath('//*[@id="search_btn"]').click()
time.sleep(1)
driver.find_element_by_xpath('//*[@id="1"]').click()
driver.find_element_by_xpath('//*[@id="regist_btn"]').click()
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
driver.switch_to.window(driver.window_handles[1])
time.sleep(1)
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
driver.find_element_by_xpath('//*[@id="btnCancel"]').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[0])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="M2181"]/a').click()
time.sleep(1)
driver.find_element_by_xpath('//*[@id="M2183"]/a').click()
time.sleep(10)
driver.find_element_by_xpath('//*[@id="searchTable"]/tbody/tr[3]/td/a[10]').click()
select=Select(driver.find_element_by_xpath('//*[@id="searchType"]'))
select.select_by_value('02')
driver.find_element_by_xpath('//*[@id="searchCont"]').send_keys(str(df1.iat[i,2]))
driver.find_element_by_xpath('//*[@id="btnSearch"]').click()
time.sleep(3)
driver.find_element_by_xpath('//*[@id="1"]/td[16]/a').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[1])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="txGoods"]').send_keys(str(df1.iat[i,5]))
select = Select(driver.find_element_by_xpath('/html/body/div[1]/article/div/form[2]/div[1]/table[2]/tbody/tr[3]/td[2]/span/select'))
select.select_by_value('01')
driver.find_element_by_xpath('//*[@id="btnSearch"]').click()
time.sleep(1)
driver.find_element_by_xpath('//*[@id="1"]/td[8]/a').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[2])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="myForm"]/div/table[2]/tbody/tr[1]/td/input[1]').click()
driver.execute_script("""var 할인기간시작일 = '"""+str(df1.iat[i,0])+"""'
$( "#txDstrtYmd" ).datepicker( "setDate", 할인기간시작일);
$( "#txDendYmd" ).datepicker( "setDate", 할인기간시작일);
$( "#txCstrtYmd" ).datepicker( "setDate", 할인기간시작일);
$( "#txCendYmd" ).datepicker( "setDate", 할인기간시작일);
$("input:radio[name='ecptYn']:input[value='Y']").attr("checked",true);""")
driver.find_element_by_xpath('//*[@id="btnRegist"]').click()
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
driver.switch_to.window(driver.window_handles[1])
time.sleep(1)
driver.find_element_by_xpath('//*[@id="jqg_gridList_1"]').click()
driver.find_element_by_xpath('//*[@id="appr_btn"]').click()
time.sleep(1)
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
time.sleep(1)
try:
da = Alert(driver)
da.accept()
except:
print('알람창없음')
time.sleep(1)
driver.find_element_by_xpath('//*[@id="btnCancel"]').click()
time.sleep(1)
driver.switch_to.window(driver.window_handles[0])
time.sleep(1)
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="M2185"]/a')
e.click()
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="M2186"]/a')
e.click()
time.sleep(1)
e = driver.find_element_by_xpath('//*[@id="couponRegistPage"]')
e.click()
time.sleep(1)