python中有异步“for”循环吗?

时间:2021-03-23 08:15:57

标签: python selenium

for line in 'textfile.txt':
   myvariables = line.split(':')
   driver = ...
   driver.get("google.com")
   driver.quit()

您好,我目前正在使用一个简单的脚本作为上面的几行...这里,在我的文本文件中的每一行,一个 selenium 驱动程序将打开,获取谷歌,然后退出。但是,例如,如果我的文本文件中有两行,则将打开一个驱动程序,然后在第一个驱动程序退出后处理第二行。是否可以同时迭代每一行?所以,基本上,如果有两条线,我怎么能同时运行两次。将它保存在一个 python 文件中对我来说是一个关键因素。感谢任何评论!

1 个答案:

答案 0 :(得分:0)

import selenium
import time
import random
import threading

def mydefini(self):
    while(True):
        driver = ....     
        driver.get("https://google.com")
        driver.get("https://youtube.com")
        driver.get("https://google.com")
            


with open("mytextfile.txt", "r") as a_file:
  for line in a_file:
      browserThread = threading.Thread(target=mydefini, args=("1"))    #args = "1" placed as a random positional argument to start the thread no problem (definitely a better solution to the random argument)
      browserThread.start()

复制并粘贴这应该可以让您使用线程/硒...如果我的文本文件中有 3 行,将启动 3 个任务,抓取 google、youtube,然后再次 google 全部同时...(如果你复制和粘贴,注意这是一个循环,它会一遍又一遍地重新启动 3 个任务)?