2017-08-31 17 views
0
from selenium import webdriver 
import csv 
import time 

url_results=[] 
driver_ie = webdriver.Ie('C:\\Users\\aviv\\Desktop\\IEDriverServer') 

with open ('C:\\Users\\aviv\\Desktop\\urlspart.txt','r') as d: 
    urls= d.read().splitlines() 

    for i,url in enumerate(urls): 

     try: 
      print "URL: " + url 
      driver_ie.get(url) 
      time.sleep(7) 
      current_url_ie = driver_ie.current_url 
      redirect_ie='No' 
      if current_url_ie == 'https://www.aviv.com': 
       redirect_ie ='Yes' 

     except Exception,e: 
      redirect_ie = 'error' 
      print e, Exception 



     writer.writerow([i,url,redirect_ie]) 
ofile.close() 

このコードでは「ブラウザを取得できません」というメッセージが表示されます。PythonのSelenium webdriver - ブラウザを取得できません。

私は既にインターネットオプション - >セキュリティを変更し、 "保護モードを有効にする"に署名しました。 しかし、エラーは依然として存在します。

誰かの解決策ですか?

+0

なぜ 'driver_ie'を2回初期化していますか? –

+0

私はそれを編集しましたが、これは問題ではありません。 –

+0

詳細な解析のために完全なエラースタックトレースを貼り付けることはできますか? – DebanjanB

答えて

0

IE 11の場合のみ、ドライバが作成するInternet Explorerのインスタンスへの接続を維持できるように、ターゲットコンピュータにレジストリエントリを設定する必要があります。 32ビットWindowsインストール用

、レジストリエディタで調べる必要があり、キーは64ビットWindowsインストール用

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE 

で、キーは

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE 

であることFEATURE_BFCACHEに注意してください。サブキーが存在する場合と存在しない場合があり、存在しない場合は作成する必要があります。重要:このキーの中には、値が0のiexplore.exeという名前のDWORD値を作成します。

http://heliumhq.com/docs/internet_explorerからレジストリファイルをダウンロードします。

これ以上必要なIE設定手順については、https://code.google.com/p/selenium/wiki/InternetExplorerDriverを参照してください。

も参照してください。

https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/6511

は、それはあなたを助けることを願っています:)

+0

ありがとうございますが、私もそれを試して、エラーがまだ存在します。 –

0

のでドライバのパスの末尾に.exeファイルが欠落してのものであってもよいです。以下のように.exeを追加してください。それはあなたのために働くかもしれません。

driver_ie = webdriver.Ie('C:\\Users\\aviv\\Desktop\\IEDriverServer.exe') 
関連する問題