小编Nee*_*eko的帖子

如何使用硒捕获网络流量

我正在启动一个新的 Django 项目,我正在尝试使用 Selenium 捕获网络流量。

我已经使用 Selenium-wire(MITM 代理)实现了这个目标,但是 Django 不喜欢使用 selenium-wire(必须使用“--nothreading --noreload”启动服务器,连接错误...)。我正在寻找使用现代解决方案来实现这一目标,例如直接解析 Firefox 的网络开发工具或使用 Firefox 插件。我正在使用 Firefox Geckodriver 进行测试。

    for x in range(0, 10):
                profile = profile_firefox()
                options = options_firefox()
                driver = webdriver.Firefox(firefox_profile=profile, options=options, executable_path='/Users/*****/Desktop/selenium-master/headless_browser/geckodriver')
                try:
                        driver.set_window_position(0, 0)
                        driver.set_window_size(randint(1024, 2060), randint(1024, 4100))
                        time.sleep(randint(3,10))
                        driver.get(url)
                        wait = ui.WebDriverWait(driver, 10)
                        time.sleep(randint(8,10))
                        if driver.find_element_by_xpath("//*[@id=\"container\"]/main/div/div/div[1]/div[2]/form/div/div[2]/div[1]/button"):
                                driver.find_element_by_xpath("//*[@id=\"container\"]/main/div/div/div[1]/div[2]/form/div/div[2]/div[1]/button").click()
                                del driver.requests
                                time.sleep(randint(8,10))
                                driver.find_element_by_xpath("//*[@id=\"container\"]/main/div/div/div[1]/div[2]/form/div/div[2]/div[1]/button").click()
                                time.sleep(randint(10,20))
                                for request in driver.requests:
                                        if request.path == "https://api.*********.**/*******/*******":
                                                request_api = request
                                                raw = str(request_api.body)
                                                request_api = raw.split(('b\''))
                                                payload_raw = request_api[1]
                                                payload = payload_raw[:-1] …
Run Code Online (Sandbox Code Playgroud)

python django python-3.x selenium-webdriver

2
推荐指数
3
解决办法
1万
查看次数

标签 统计

django ×1

python ×1

python-3.x ×1

selenium-webdriver ×1