2016-10-07 9 views
0

最初にPythonでSeleniumを設定して実行している問題があります。 私のシステム - Windows 8.1、Python 3.4.4Selenium Python-Firefoxが常に空白ページを読み込んでいます

コンソール内のPythonコードでブラウザを呼び出したり、この特定のコードでpy docを実行しようとすると、ブラウザに空白のページしか表示されません。 しばらくすると、コンソールにエラーが表示されます。

`C:\Python34\selenium\Tests>new1.py 
    Traceback (most recent call last): 
    File "C:\Python34\selenium\Tests\new1.py", line 2, in <module> 
    browser=webdriver.Firefox() 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\webdriver.py", 
line 80, in __init__ 
    self.binary, timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\extension_conne 
ction.py", line 52, in __init__ 
    self.binary.launch_browser(self.profile, timeout=timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\firefox_binary. 
py", line 68, in launch_browser 
    self._wait_until_connectable(timeout=timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\firefox_binary. 
py", line 108, in _wait_until_connectable 
    % (self.profile.path)) 
selenium.common.exceptions.WebDriverException: Message: Can't load the profile. 
Profile Dir: C:\Users\Admin\AppData\Local\Temp\tmpxr3qxv83 If you specified a lo 
g_file in the FirefoxBinary constructor, check it for details. 
` 

あなたが私を助けることができれば本当に素晴らしいでしょう。

P.S.バージョンPIPここでは、最新の-8.1.2 Firefoxバージョン49.0.1

である私はそれが既に

小さなアップデート前にインストールされている環境

C:\Python34\Scripts>pip.exe install selenium 
Requirement already satisfied (use --upgrade to upgrade): selenium in c:\python3 
4\lib\site-packages 

を設定したコードは、ありますみんな

私は特にセレンテストのためのFirefoxプロファイルを作成しました。しかし、私は再び例外と同じ問題を抱えています。

>>> from selenium import webdriver 
>>> from selenium.webdriver.common.keys import Keys 
>>> fp = webdriver.FirefoxProfile('C:/Users/Admin/AppData/Roaming/Mozilla/Firefo 
x/Profiles/2byxc9l6.selenium') 
>>> browser = webdriver.Firefox(fp) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\webdriver.py", 
line 80, in __init__ 
    self.binary, timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\extension_conne 
ction.py", line 52, in __init__ 
    self.binary.launch_browser(self.profile, timeout=timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\firefox_binary. 
py", line 68, in launch_browser 
    self._wait_until_connectable(timeout=timeout) 
    File "C:\Python34\lib\site-packages\selenium\webdriver\firefox\firefox_binary. 
py", line 108, in _wait_until_connectable 
    % (self.profile.path)) 
selenium.common.exceptions.WebDriverException: Message: Can't load the profile. 
Profile Dir: C:\Users\Admin\AppData\Local\Temp\tmpe1dfmxt_\webdriver-py-profilec 
opy If you specified a log_file in the FirefoxBinary constructor, check it for d 
etails. 

>>> 

セレニウムが別のディレクトリのPATHを検索していたのは間違っていましたか?

P.S.セレンのバージョンは2.53.6です。 Firefoxが49.0.1

+0

正しい形式でここにコードをしてください投稿。 – MooingRawr

+0

あなたFFプロファイルに問題があるようだ。私たちにあなたが設定したコードを表示しますwebdriverとSelenium/Firefoxのバージョン情報C:\ Users \ Admin \ AppData \ Local \ Temp \ tmpxr3qxv83は存在し、有効な読み取り可能なプロファイルですか? –

+0

@Olexiyソースコードなしあなたの問題を理解するのは難しいです。 – user2728397

答えて

0

これはFirefoxプロファイルを読み込む際の問題です。これを避けるには、カスタムプロファイルをテストに使用する必要があります。

カスタムプロファイルを作成する:Firefoxのすべてのインスタンスを閉じて、コマンドラインからfirefox -Pと起動します。手順に従って、意味のある名前(「selenium」など)でプロファイルを作成し、プロファイルが保存されているディレクトリを確認します。詳細はhereで説明します。

コードをnew1.pyに置き換えて、カスタムプロファイルを持つfirefoxドライバインスタンスを作成します。プロファイルがフォルダ "C:¥Users¥Admin¥AppData¥Roaming¥Mozilla¥Firefox¥Profiles¥cmx3h2wi.selenium"にある場合は、browser=webdriver.Firefox()の行をこれに置き換えてください(Windowsの場合でも、スラッシュはhere

fp = webdriver.FirefoxProfile('C:/Users/Admin/AppData/Roaming/Mozilla/Firefox/Profiles/cmx3h2wi.selenium') 
browser = webdriver.Firefox(fp) 

FirefoxDriverがあなたのSeleniumテスト専用のプロファイルをロードする必要がありその方法は。

+0

Firefoxを46バージョンにダウングレードして問題を解決しました。ありがとう、皆さん、お手伝いします! –

関連する問題