web=webdriver.Firefox() web.get()def work1(): passdef work2(): passdef work3(): pass w1 = Process(target=work1,name='w1') w2 = Process(target=work2,name='w2') w3 = Process(target=work3,name='w3') w1.start() w2.start() w3.start()
这样web.get()会打开一个firefox. 三个进程也打开三个firefox。
这下就四个了。
我是想能不能让它们只打开一个firefox工作???
(不用线程)(语法不是问题的重点,只是说明问题随手打的)
python多进程,不能在同一窗口吗?-PHP中文网问答-python多进程,不能在同一窗口吗?-PHP中文网问答
围观一下哦,学习一下。
不能。
题主的意思应该是使用多线程获取网页信息,然而一个html文档必须占用一个窗口,现代浏览器使用标签页解决这个问题,那么题主可以在firefox中设置默认使用标签页打开窗口。
另外,应该在主线程中打开全部窗口,然后将窗口对象传递至子进程。否则,firefox会认为自己被多个进程调用。