首页 > 解决方案 > 如何一次从 csv 文件中获取变量并循环项目?

问题描述

您好,我刚从 python 第 3 天开始,并尝试使用 selenium chromedriver 自己的项目

我正在尝试自动登录和更新 50 个帐户的电话号码,但我不知道如何从 csv 文件中一次一行获取用户名、密码、号码并循环整个项目。请帮助任何建议都会很棒

这是 csv 文件 Csv 图像文件

login          pass         number
username1   password-1  631-563-7224
username2   password-2  631-563-7225
username3   password-3  631-563-7226
username4   password-4  631-563-7227
username5   password-5  631-563-7228
username6   password-6  631-563-7229
username7   password-7  631-563-7230
username8   password-8  631-563-7231
username9   password-9  631-563-7232

这是到目前为止的代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.action_chains import ActionChains

import os


options = Options()
# options.add_argument("--window-size=1920,180")
driver = webdriver.Chrome(options=options)


driver.get("https://signup.live.com/signup?contextid=D6D1F463EB285DA7&bk=1620539399&ru=https://login.live.com/login.srf%3fcontextid%3dD6D1F463EB285DA7%26uiflavor%3dweb%26mkt%3dEN-US%26lc%3d1033%26bk%3d1620539399%26uaid%3d3e34bc362ac34e88897c544e1372a282&uiflavor=web&lic=1&mkt=EN-US&lc=1033&uaid=3e34bc362ac34e88897c544e1372a282/")

#folder = driver.find_element_by_xpath("//a[@aria-label='Create a Microsoft account']")
#folder.click()

folder = driver.find_element_by_xpath("//input[@name='MemberName']")
name = "username1@outlook.com"
folder.send_keys("username1@outlook.com")


folder = driver.find_element_by_xpath("//input[@id='iSignupAction']")
folder.click()

感谢@th-spt,他的回答解决了我的问题:

from openpyxl import load_workbook
wb = load_workbook(filename = 'csv-example.xlsx')
sheet_ranges = wb['Sheet1']
print(sheet_ranges['A2'].value)
print(sheet_ranges['B2'].value)
print(sheet_ranges['C2'].value)
id1 = sheet_ranges['A2'].value
id2 = sheet_ranges['B2'].value
id3 = sheet_ranges['C2'].value

folder.send_keys(id1) #in line 20th from your code

标签: python-3.x

解决方案


看看这个。用户名在索引 0 中,密码在索引 1 中,数字在索引 2 中。

import csv
with open("filename.csv", "r") as f:
       reader  = csv.reader(f)
       for i in reader:
           username = i[0]
           password = i[1]
           number = i[2]
           print(username,password,number)

推荐阅读