Python循环迭代问题:每次仅读取DataFrame某列单行数据
解决DataFrame逐行填入网页输入框的问题
你的代码逻辑本身是逐行遍历DataFrame的,但出现一次性填入所有值的问题,大概率是输入框没有在每次循环前清空,导致每次send_keys都把当前行的值追加到了输入框里,最终看起来像是一次性填了所有内容。
给你几个可行的修复方案:
方案1:每次输入前清空输入框
在调用send_keys之前,先调用输入框的clear()方法清空原有内容:
for index, row in df.iterrows(): search.clear() # 清空输入框 search.send_keys(row["XY"]) # 这里可以加上提交操作或等待,比如按回车、点击提交按钮
方案2:直接遍历XY列的单个值
如果只需要XY列的数据,可以直接遍历该列,代码更简洁:
for value in df["XY"]: search.clear() search.send_keys(value) # 后续操作
额外检查点
- 确认你的
df["XY"]列每行都是单个值,没有包含列表或多值的情况,如果有,需要先处理成单个字符串。 - 如果网页输入框有特殊限制(比如自动填充、延迟加载),可以在
send_keys前加个短暂等待,比如用time.sleep(0.5)(记得先导入time模块)。
内容的提问来源于stack exchange,提问作者jaayjoo
相关产品推荐
相关产品推荐

