Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Selenium的同一脚本的多个实例_Python_Selenium - Fatal编程技术网

Python 使用Selenium的同一脚本的多个实例

Python 使用Selenium的同一脚本的多个实例,python,selenium,Python,Selenium,我有一个python脚本,它使用Selenium。我需要同时运行脚本的多个实例,也就是说,同一个脚本使用不同的参数运行多次: python my_script.py --arg1 2222222 python my_script.py --arg1 222 python my_script.py --arg1 342432 在代码中,它们都使用相同的浏览器(不是相同的窗口,而是相同的浏览器)。如果有必要,每个脚本只使用一个线程 那么,可以同时运行它们吗?这会导致不良行为吗?或者一般来说一切都应

我有一个python脚本,它使用Selenium。我需要同时运行脚本的多个实例,也就是说,同一个脚本使用不同的参数运行多次:

python my_script.py --arg1 2222222
python my_script.py --arg1 222
python my_script.py --arg1 342432
在代码中,它们都使用相同的浏览器(不是相同的窗口,而是相同的浏览器)。如果有必要,每个脚本只使用一个线程

那么,可以同时运行它们吗?这会导致不良行为吗?或者一般来说一切都应该是好的

我还没有在Selenium网站上找到这方面的信息


还有,更重要的是,他们会共享缓存/代理/cookie还是浏览器的每个实例都有自己的缓存/代理/cookie?例如,如果我运行5个脚本,使每个脚本都有自己的浏览器,例如Firefox,那么每个Firefox是否都有自己的缓存/代理/cookies?

每次我们通过Selenium调用浏览器时,它都会创建指定浏览器的新实例线程。如果已定义DesiredCapabilities,则这些特定设置将应用于调用的浏览器实例

这就是确切的原因,您可以并行运行selenium测试,运行浏览器的多个实例,其中每个浏览器使用不同的脚本执行

提供有关selenium如何处理浏览器实例的少量信息


浏览器从未存储缓存/代理/cookie的干净状态启动。您可以注意到,selenium启动的浏览器实例将没有任何扩展/附加组件

因此,同一浏览器的每个实例都可以通过其自己的代理连接到internet?您的意思是您有许多internet源,并且希望每个浏览器的代理都被更改?请参阅此链接以设置您自己的代理。如果您只想从浏览器连接网站,请确保浏览器实例是独立的,尽管它使用相同的代理,但两个浏览器之间不会有任何干扰。我知道如何更改它。我的问题是关于我的脚本的多个实例,每个实例运行一个实例,比如说Firefox。因此,有5个Fifrefox同时运行(可能针对不同的URL,但不一定),我可以为这5个Firefox中的每一个设置不同的代理吗?