Seleium无法通过mod_wsgi在Apache上启动Chrome浏览器

时间:2018-10-30 14:54:03

标签: python django apache selenium mod-wsgi

我正在开发Django项目。我使用名为test_seleium_view()的视图对Seleium的Chrome浏览器进行了测试。出于演示目的,我的代码如下所示:

urls.py

# coding=utf-8
from __future__ import unicode_literals, absolute_import
from django.conf.urls import url
from .views import *

urlpatterns = [url(r'^test_seleium$',test_seleium_view,name='test_seleium'),]

test_seleium.py

# coding=utf-8
from __future__ import unicode_literals, absolute_import
import time
from django.shortcuts import render_to_response
from selenium import webdriver

def test_seleium_view(request):
    chrome_options = webdriver.ChromeOptions()
    chrome_options.add_argument("--start-maximized")
    chrome_options.add_argument('--disable-extensions')
    CHROME_DRIVER_PATH = r"C:\Program Files (x86)\chromedriver\chromedriver_win32_v2.43.exe"
    driver = webdriver.Chrome(executable_path=CHROME_DRIVER_PATH, chrome_options=chrome_options)

    driver.get('http://www.google.com')
    time.sleep(5)
    driver.quit()

    return render_to_response('result.html',{'text': "success"})

当我在Django开发服务器上访问http://127.0.0.1:8000/app_name/test_seleium时,一切正常,Seleium启动了Chrome浏览器,然后打开http://www.google.com等待5秒钟,然后关闭Chrome浏览器。

然后,我将这个Django项目带到安装了Apache和mod_wsgi的虚拟机(VMware Workstation,安装了7个64位)上,当我访问http://my_vmware_virtual_host_ip:8000/app_name/test_seleium时,它没有使用Chrome浏览器,但是过了一会儿,该页面显示文本“成功”,就像test_seleium_view()已成功运行,并且在Windows 7背景上存在一个chrome.exe进程。

我的环境:

VMware Workstation 15.0.0 build-10134415
Windows 7 64bit on VMware Virtual Machine
Apache 2.4.37 Win64
mod_wsgi 4.6.5+ap24vc14-cp36-cp36m-win_amd64
python 3.6.4 64bit
Django 2.0.7
selenium 3.14.1
chromdriver win32_v2.43,win32_v2.42

我在google.com上搜索了此问题,但运气不佳。

我在StackOverFlow.com上发现了类似的问题,但没有答案。

0 个答案:

没有答案