python - Python Selenium:执行此脚本 100 次
问题描述
selenium 新手并且能够将这段代码放在一起......效果很好,但是我无法让它重复而不是退出并重新开始......我需要它在退出之前提交 100 次......任何建议欢迎使用简洁明了的代码...
from random import *
import random
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions
randomNumber = random.randint(1, 2)
randomNumber1 = random.randint(1, 2)
randomNumber2 = random.randint(1, 2)
randomNumber3 = random.randint(1, 2)
randomNumber4 = random.randint(1, 2)
randomNumber5 = random.randint(1, 2)
driver=webdriver.Chrome(executable_path="C:\chromedriver\chromedriver.exe")
driver.implicitly_wait(30)
driver.get("http://pagelogintothewebsite.com")
time.sleep(10)
# Lets login
usernameStr = 'username'
passwordStr = 'password'
username = driver.find_element_by_xpath('//*
[@id="j_page_header"]/div[1]/div/div[1]/input')
username.send_keys(usernameStr)
password = driver.find_element_by_xpath('//*
[@id="j_page_header"]/div[1]/div/div[1]/input')
password.send_keys(passwordStr)
enter = driver.find_element_by_xpath('//[@id="j_page_header"]/div[1]/div/div[2]/button')
enter.click()
time.sleep(2)
driver.find_element_by_xpath("//div[text()='Mines']").click()
time.sleep(2)
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber1) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber2) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber3) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div/div/div[" + str(randomNumber4) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div/div/div[" + str(randomNumber5) + "]").click()
time.sleep(2)
driver.find_element_by_xpath("//*[@id='getin']/div[2]/div/div[5]/button").click()
time.sleep(2)
driver.quit()
解决方案
试试看:
import random
import time
from selenium import webdriver
randomNumber = random.randint(1, 2)
randomNumber1 = random.randint(1, 2)
randomNumber2 = random.randint(1, 2)
randomNumber3 = random.randint(1, 2)
randomNumber4 = random.randint(1, 2)
randomNumber5 = random.randint(1, 2)
driver = webdriver.Chrome(executable_path="C:\chromedriver\chromedriver.exe")
driver.implicitly_wait(30)
driver.get("http://pagelogintothewebsite.com")
time.sleep(10)
# Lets login
usernameStr = 'username'
passwordStr = 'password'
username = driver.find_element_by_xpath('//*[ @ id = "j_page_header"] / div[1] / div / div[1] / input')
username.send_keys(usernameStr)
password = driver.find_element_by_xpath('//*[ @ id = "j_page_header"] / div[1] / div / div[1] / input')
password.send_keys(passwordStr)
enter = driver.find_element_by_xpath('//[@id="j_page_header"]/div[1]/div/div[2]/button')
enter.click()
time.sleep(2)
for i in range(100):
driver.find_element_by_xpath("//div[text()='Mines']").click()
time.sleep(2)
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber1) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber2) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div[" + str(randomNumber3) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div/div/div[" + str(randomNumber4) + "]").click()
driver.find_element_by_id("//*[@id='serieswatch']/div[2]/div/div/div[" + str(randomNumber5) + "]").click()
time.sleep(2)
driver.find_element_by_xpath("//*[@id='getin']/div[2]/div/div[5]/button").click()
time.sleep(2)
driver.quit()
推荐阅读
- c# - 如何使用 LINQ/Lambda 来缩短我的 C# 代码段?
- r - 如果不使用 bsButton(),shinyBS Popover 将无法正常工作
- python - Pyspark:仅读取特定日期的 ORC 数据
- c# - 如何动态生成ics文件?
- python-3.x - 将python字典中的一位数转换为两位数
- python - 将现有的相关字段迁移到 Django 中的另一个模型
- regex - 正则表达式和 Grafana:排除和字符串切割
- c# - 多对多 CRUD 操作 ASP.Net Core
- angularjs-scope - 如何设置 AngularJS 组件的作用域
- xml - URL 重写语法问题 R:0, R:1, R:2