0

私はあなたの宝石で仕事をしようとしています.Windows 7では次のことを行いました:

gem install browsermob-proxy

すべて成功しましたが、コードを起動しようとしました:

require 'selenium/webdriver'
require 'browsermob/proxy'

server = BrowserMob::Proxy::Server.new('C:/Ruby193/lib/ruby/gems/1.9.1/gems/browsermob-proxy-0.1.3/lib/browsermob-proxy.rb') #=> #<BrowserMob::Proxy::Server:0x000001022c6ea8 ...>
server.start

proxy = server.create_proxy #=> #<BrowserMob::Proxy::Client:0x0000010224bdc0 ...>

profile = Selenium::WebDriver::Firefox::Profile.new #=> #<Selenium::WebDriver::Firefox::Profile:0x000001022bf748 ...>
profile.proxy = proxy.selenium_proxy

driver = Selenium::WebDriver.for :firefox, :profile => profile

proxy.new_har "google"
driver.get "http://google.com"

har = proxy.har #=> #<HAR::Archive:0x-27066c42d7e75fa6>
har.entries.first.request.url #=> "http://google.com"
har.save_to "/tmp/google.har"

proxy.close
driver.quit

エラーが発生します:

C:/Ruby193/lib/ruby/gems/1.9.1/gems/browsermob-proxy-0.1.3/lib/browsermob/proxy/server.rb:16:in ´initialize' : Permission denied - not executable: C:/Ruby193/lib/ruby/gems/1.9.1/gems/browsermob-proxy-0.1.3/lib/browsermob-proxy.rb (Errno::EACCES) 
from gethar.rb:in 'new'
from gethar.rb:in '<main>'

LinuxのようにWindowsには権限がないと思いましたか?だから助けてください

4

1 に答える 1

1

エラー メッセージは誤解を招きます。これは権限の問題ではありません。gem とは別の browsermob バット ファイルを指定する必要があります。

ここからダウンロードできます: http://bmp.lightbody.net/

次に、ファイルの場所をポイントします。私の場合は次のようになります。

server = BrowserMob::Proxy::Server.new('C:/browsermob-proxy/bin/browsermob-proxy.bat')

これで問題が解決するはずです。

于 2014-05-20T14:52:37.937 に答える