やりたいこと
現在Rubyで既に開発ずみのスクレイピングサービスにProxyの設定を加えようと思っています。
海外の適当な無料のProxyの設定やそのIPアドレス経由でのサイトアクセスは問題なかったのですが、
有料のレンタルproxy serverを使った場合のユーザー名とパスワードの設定の方法がわかりません。
Proxy sever 提供元企業によるとフォーマットは IP:PORT:USER:PASS
のようになっているとのことです。
もしご存知の方がいらっしゃったらご教示頂きたいです。
これを調べる必要がある、Rubyだと絶対にできない等のご指摘でも大変ありがたいです。
試したこと
海外の無料Proxyの設定はこのような形でできました。
Ruby
1proxy_host = '185.186.61.44' 2proxy_port = '11334' 3 4options = Selenium::WebDriver::Chrome::Options.new 5options.add_argument('--headless') 6options.add_argument('--no-sandbox') 7options.add_argument("--proxy-server=http://#{proxy_host}:#{proxy_port}") 8
有料Proxyサーバーの提供元がフォーマットは IP:PORT:USER:PASS
このようになっているということだったので、
下記のようにできたら良いなと思っていましたが、うまく行きませんでした。
Ruby
1proxy_host = '185.186.61.44' 2proxy_port = '12323' 3proxy_user = "7a2345129" 4proxy_pass = "easdga341d4" 5options = Selenium::WebDriver::Chrome::Options.new 6options.add_argument("--proxy-server=http://#{proxy_host}:#{proxy_port}:#{proxy_user}:#{proxy_pass}")
また、Proxy server提供元の企業にユースケースがないか確認しましたが、用意していないらしく、助けてもらえませんでした。
参考
こちらのstackoverflowの投稿も参考にしましたが、pythonである点やheadlessの場合はextensionを加えることができないという記述があり、参考にできないかと思っています。
https://stackoverflow.com/questions/55582136/how-to-set-proxy-with-authentication-in-selenium-chromedriver-python
また、こちらの投稿では同じくRubyでの書き方について触れていますが、フォーマットが違う点やpuppeteerを使用した場合の書き方について触れられており、参考にできなかと思っています。
https://stackoverflow.com/questions/56666281/how-to-add-pass-username-password-to-proxy-in-selenium-webdriver-ruby
あなたの回答
tips
プレビュー