web=webdriver.Firefox()
web.get()
def work1():
pass
def work2():
pass
def 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工作???
(不用线程)
(语法不是问题的重点,只是说明问题随手打的)
ringa_lee2017-04-18 10:27:42
不能。
題主的意思應該是使用多線程獲取網頁信息,然而一個html文檔必須佔用一個窗口,現代瀏覽器使用標籤頁解決這個問題,那麼題主可以在firefox中設置默認使用標籤頁打開窗口。
另外,應該在主執行緒中開啟全部窗口,然後將窗口物件傳遞至子進程。否則,firefox會認為自己被多個進程呼叫。