मैं, एक स्क्रीनशॉट लेने scraping, और परीक्षण जैसी बुनियादी चीजें के लिए सेलेनियम का उपयोग करने सीख रहा हूँ और बिना सिर क्रोम, जो अब क्रोम 59मैं हेलेलेस क्रोम पर सेलेनियम वेबड्राइवर का उपयोग कैसे करूं?
के रूप में स्थिर रहा लेने के लिए सक्षम किया गया है है के साथ उपयोग करना चाहते हैं 'सेलेनियम-वेबड्राइवर' मणि और क्रोमेड्रिवर का उपयोग कर एक स्क्रीनशॉट, लेकिन सिरदर्द नहीं।
:> ruby rubytest.rb
"initializing driver"
2017-06-07 15:55:43 DEBUG Selenium Executing Process
["/Users/name/Documents/scrapings/python/env/bin/chromedriver", "--port=9515"]
2017-06-07 15:55:43 DEBUG Selenium polling for socket on ["127.0.0.1", 9515]
Starting ChromeDriver 2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b) on port 9515
Only local connections are allowed.
2017-06-07 15:55:43 INFO Selenium -> POST session
2017-06-07 15:55:43 INFO Selenium >>> http://127.0.0.1:9515/session | {"desiredCapabilities":{"browserName":"chrome","version":"","platform":"ANY","javascriptEnabled":true,"cssSelectorsEnabled":true,"takesScreenshot":false,"nativeEvents":false,"rotatable":false,"chromeOptions":{"args":["--headless","--disable-gpu","--screenshot","--hide-scrollbars"]}}}
2017-06-07 15:55:43 DEBUG Selenium > {"Accept"=>"application/json", "Content-Type"=>"application/json; charset=utf-8", "Content-Length"=>"284"}
[RUBY BACKTRACE TO DRIVER INITIALIZATION]
मैं जावास्क्रिप्ट और अजगर का उपयोग कर की कोशिश की है:
यहाँ है कि मैं चला रहा हूँ माणिक स्क्रिप्ट जो लॉग से चालक
require 'rubygems'
require 'selenium-webdriver'
Selenium::WebDriver.logger.level = :debug
p 'initializing driver'
driver = Selenium::WebDriver.for :chrome, switches: %w[--headless --disable-gpu --screenshot --hide-scrollbars]
p 'navigating to Google'
driver.navigate.to "http://google.com"
driver.save_screenshot("./screen.png")
driver.quit
और उत्पादन प्रारंभ करने में शुरू करने के बाद लटका हुआ है समान कोड वाले ड्राइवर और कुछ भी काम नहीं करता है। जब मैं पाइथन के साथ कोशिश करता हूं, तो त्रुटि संदेश
WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
(Driver info: chromedriver=2.29.461585 (0be2cd95f834e9ee7c46bcc7cf405b483f5ae83b),platform=Mac OS X 10.12.5 x86_64)
में सेलेनियम के साथ बिना सिर क्रोम की स्थापना के लिए उपयोग की इस है? https://medium.com/@CukeHub/headless-chrome-with-ruby-cucumber-selenium-abf6da437fd9 –
हां, यह कुछ उपयोग था, धन्यवाद। वांछित_ क्षमताओं के माध्यम से '--हेडलेस' तर्क को पास करने से मुझे नेविगेट करने और तत्वों का चयन करने की अनुमति दी गई; हालांकि, यह विधि अभी भी सामान्य 'गैर-हेडलेस' क्रोम जैसे स्क्रीनशॉट नहीं देती है। –
मुझे अभी एक अच्छा छोटा [लिंक] मिला है (https://sermoa.wordpress.com/2013/10/24/getting-chromedriver-to-work-with-ruby-selenium-webdriver-under-osx-mavericks/) जो एक ही/समान समस्या से संबंधित है। –