2017-03-25 17 views
1

私は初心者ですので、私のコーディングが少し過度であればよろしくお願いします。私は.xlsxファイルをインポートしようとしていて、スプレッドシートのフィールドをスクリプト上にある 'email'、 'password'、 'first name'、 'last name'、 'city'の代わりに使用しています。私はまた、すべてのフィールドがスクリプトに適切に入力されるまでスクリプトをループさせたい。ここでPythonでExcelファイルをインポートするにはどうすればよいですか?

は、私が使用したいスプレッドシートの画像です:

enter image description here

ここではスクリプトです:

from selenium import webdriver 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support.ui import WebDriverWait 
from selenium.webdriver.support import expected_conditions as EC 
from selenium.webdriver.common.by import By 
from selenium.webdriver.common import action_chains, keys 
from selenium.webdriver.common.keys import Keys 
from selenium.webdriver.support.ui import Select 
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities 
from selenium.common.exceptions import NoSuchElementException 
from selenium.common.exceptions import NoAlertPresentException 
from selenium.common.exceptions import ElementNotVisibleException 
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile 
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary 
import time 
from random import randint 
from multiprocessing import Process 
from threading import Thread 
import threading 
import time, sys, os 


root_url='https://www.nike.com/us/en_us/p/settings' 

url='https://www.nike.com/us/en_us/p/settings' 


driver = webdriver.Chrome('/Users/mileswalker/chromedriver') 

driver.set_window_position(0, 0) 

driver.set_window_size(500, 500) 



driver.maximize_window() 
driver.implicitly_wait(0.5) 
driver.get(url) 
time.sleep(0.5) 
wait = WebDriverWait(driver, 10) 



#Email 
driver.find_element_by_name('emailAddress').send_keys("[email protected]") 

print "Successfully Entered Email..." 


#Password 

driver.find_element_by_xpath("//input[@placeholder='Password']").send_keys("Example") 

print "Successfully Entered Password..."  

#Login Button 

driver.find_element_by_xpath("//input[@value='LOG IN']").click() 

time.sleep(10.0) 


#First Name 
driver.find_element_by_xpath('//*[@id="first-name"]').clear() 
driver.find_element_by_xpath('//*[@id="first-name"]').send_keys("John") 

print "Successfully Entered First Name..." 

#Last Name 
driver.find_element_by_xpath('//*[@id="last-name"]').clear() 
driver.find_element_by_xpath('//*[@id="last-name"]').send_keys("Doe") 

print "Successfully Entered Last Name..." 


#City 
driver.find_element_by_xpath('//*[@id="town"]').clear() 
driver.find_element_by_xpath('//*[@id="town"]').send_keys("District Heights") 

print "Successfully Entered City..." 

time.sleep(2.5) 

#Save Button 
driver.find_element_by_xpath('//*[@id="content"]/div[1]/div[2]/div[1]/form/div[18]/button[2]').click() 

print "Successfully Saved Account Information..." 

time.sleep(2.5) 

#Logout 

driver.find_element_by_xpath('/html/body/div[8]/nav/div[1]/ul[2]/li[1]').click() 
driver.find_element_by_xpath('//*[@id="exp-profile-dropdown"]/ul/li[9]').click() 

print "Successfully Logged Out..." 
print "Moving On To The Next Nike Account." 

driver.close() 
+0

ここで読んだことがある:http://stackoverflow.com/questions/22169325/read-excel-file-in-pythonを。あなたのニーズに合うようにコードを変更するのは簡単でなければならない – BioGenX

+1

xlsxファイルを扱ういくつかのパッケージがあります。ウェブ検索といくつかのチュートリアルは良いスタートになるでしょう。あるいは、テーブルをCSVファイルに保存して、Pythonの標準の 'csv'モジュールや' pandas'モジュールを使用することもできます。多くのオプション! – tdelaney

+0

私は@tdelaneyに同意します。あなたのケースではCSVが良い選択肢になります。 –

答えて

関連する問題