2016-04-11 9 views
-1
def take_all_screenshots(self): 
Base_URL = "URL HERE" 
pages = ['urlhere1', 
      'urlhere2', 
      'urlhere3', 
      ] 

for page in pages: 
    self.driver.get(Base_URL + page) 
    pagename = "%s" %str(page) 
    name = pagename + str(datetime.datetime.now()) + '.png' 
    self.driver.save_screenshot('screenshots/%s' % name) 

リストからURLを取得してスクリーンショット名に追加するにはどうすればよいですか? 現在、それは最初のものだけをつかむ、助けてください!リストから値を取得するにはどうすればよいですか? PythonとSelenium

+0

私はスクリーンショットの名前にしたいリスト内の正しい項目を返します。 "urlhere1 + datetime.png"として出てください –

+0

現在の出力は何ですか? –

+0

最初のURLのスクリーンショットが1つだけです –

答えて

1

こんにちはオートメーション熱狂的ファン、

listname[index]を使用し、リストから項目を取得します。インデックスは0から始まり1ずつカウントアップすることに注意してください。

2つの文字列を連結するには、string1 + string2を使用してください。

ファイル名を結果に変更するには、os.rename("original/filename/and/file.path","new/filename/and/file.path")を使用します。ループは同じ範囲内であれば、このことができます

希望、BoxTechy

+0

ループを通過するごとにどのようにこのページを取得するのですか? @stat(pages [0])+ str(datetime.datetime.now())+ '.png' –

+0

@AutomationEnthusiast整数だけでなく変数も使用できます。代わりにページ[ページ]を試してください。 – BoxTechy

+0

ページ[012]TypeError:リストのインデックスはstrではなく整数でなければなりません –

0

あなたは試みることができる:

def take_all_screenshots(self): 
    Base_URL = "URL HERE" 
    pages = ['urlhere1', 
      'urlhere2', 
      'urlhere3', 
      ] 

    for page in pages: 
     #Why have a getter() that returns nothing 
     #self.driver.get(Base_URL + page) 
     pagename = "%s" %str(page) 
     name = pagename + str(datetime.datetime.now()) + '.png' 
     self.driver.save_screenshot('screenshots/%s' % name) 

for page in pages:

関連する問題