python浏览器的多处理

python浏览器的多处理,python,multithreading,multiprocessing,load-testing,Python,Multithreading,Multiprocessing,Load Testing,我想以非常高的频率访问一个网站,比如每秒100次 在我下面的代码中,我有一个打开google.com的示例流程,找到一个元素并记录时间,然后再执行一些随机操作 我观察到,即使对于5个请求,时间也以秒为单位变化。 前 我需要100个请求同时显示。请改进我的代码或提出其他建议。我愿意使用任何能帮助我达到每秒100次点击的技术。我的应用程序是基于浏览器的,需要提交HTML表单并在后台调用API import multiprocessing as mp from selenium import webd

我想以非常高的频率访问一个网站,比如每秒100次

在我下面的代码中,我有一个打开google.com的示例流程,找到一个元素并记录时间,然后再执行一些随机操作

我观察到,即使对于5个请求,时间也以秒为单位变化。 前

我需要100个请求同时显示。请改进我的代码或提出其他建议。我愿意使用任何能帮助我达到每秒100次点击的技术。我的应用程序是基于浏览器的,需要提交HTML表单并在后台调用API

import multiprocessing as mp
from selenium import webdriver
import time

def run_test(params):
    driver = webdriver.Firefox()
    driver.get("http://google.com")
    a = driver.find_element_by_name("q")
    print time.ctime()
    a.send_keys("priyanka chopra")
    a = driver.find_element_by_name("btnG")
    a.click()
    driver.quit()

if __name__ == '__main__':
    count=5
    parameters = range(count)
    pool = mp.Pool(len(parameters))
    pool.map(run_test, parameters)
    time.sleep(5)

出于好奇,你这么做的动机是什么?你试图做的可能会被误认为是DOS攻击,或者应该是DOS攻击?。你确定没有别的办法了吗?我正在检查我的API。我们已经通过浏览器实现了API测试。填写第1页的表格,见第2页的结果。所以,我的动机基本上是进行负载测试,以使每分钟的点击次数尽可能多。您是否考虑过使用负载测试工具,例如,而不是自己滚动?我们是否可以在蝗虫中填写数据和提交表单。你有一个例子的链接,请。我在某个地方读到,蝗虫从来不会自己停下来。我是说,如果我需要在100次请求后停止测试。我们必须手动阻止蝗虫。
import multiprocessing as mp
from selenium import webdriver
import time

def run_test(params):
    driver = webdriver.Firefox()
    driver.get("http://google.com")
    a = driver.find_element_by_name("q")
    print time.ctime()
    a.send_keys("priyanka chopra")
    a = driver.find_element_by_name("btnG")
    a.click()
    driver.quit()

if __name__ == '__main__':
    count=5
    parameters = range(count)
    pool = mp.Pool(len(parameters))
    pool.map(run_test, parameters)
    time.sleep(5)