for循环不循环Python

时间:2019-02-06 15:03:26

标签: python selenium

我有问题。我正在用Selenium编写一个机器人。我正在使用3个数组,但for循环不起作用。数组的所有元素都被写入输入。您可以查看以下代码。 我该如何解决? 最好的问候。

bot.py:

from selenium import webdriver
import time
import list

browser = webdriver.Firefox()
browser.get("")
time.sleep(4)
sayi=1
for posta, isim, kadi in zip(instagramList.email,instagramList.fullName,instagramList.userName):
browser.find_element_by_css_selector("input[name='emailOrPhone']").send_keys(posta)
browser.find_element_by_css_selector("input[name='fullName']").send_keys(isim)
browser.find_element_by_css_selector("input[name='username']").send_keys(kadi)
browser.find_element_by_css_selector("input[name='password']").send_keys("+1gP5xc!")
time.sleep(2)
browser.find_element_by_partial_link_text('Sign').click()
print(str(sayi)+". "+ "Kayit olustu.")
sayi = sayi+1

list.py

email=["abidinkandemir@evtsoft.com", "asd@asd.com", "sdsd@asd.com"],
fullName=["abidin kandemir","asd asd", "asdd asd"],
userName=["abidinkandemir102","asdas", "asdd"]

1 个答案:

答案 0 :(得分:1)

  1. 例如,您已将带有列表的文件重命名为“ instagramList.py”。
  2. 在“ bot.py”文件中,您需要导入该文件,例如:import instagramList

完成这些步骤之后,您的脚本应该工作一次迭代(如果您正确地使用了代码):

bot.py:

from selenium import webdriver
import time
import instagramList


browser = webdriver.Firefox()
browser.get("your_url")
time.sleep(4)
sayi = 1

for posta, isim, kadi in zip(instagramList.email, instagramList.fullName, instagramList.userName):

    browser.find_element_by_css_selector("input[name='emailOrPhone']").send_keys(posta)
    browser.find_element_by_css_selector("input[name='fullName']").send_keys(isim)
    browser.find_element_by_css_selector("input[name='username']").send_keys(kadi)
    browser.find_element_by_css_selector("input[name='password']").send_keys("+1gP5xc!")
    time.sleep(2)
    browser.find_element_by_partial_link_text("Sign").click()
    print(str(sayi) + ". Kayit olustu.")
    sayi = sayi + 1

instagramList.py

email = ["abidinkandemir@evtsoft.com", "asd@asd.com", "sdsd@asd.com"],
fullName = ["abidin kandemir","asd asd", "asdd asd"],
userName = ["abidinkandemir102","asdas", "asdd"]

PS:即使在此之后,您的代码也将无法按预期工作。为什么?您需要在每次登录后执行“注销”操作,然后使用browser.get("your_url")打开“登录”页面。

希望对您有帮助!