Python w/Selenium ve PhantomJS'de basit bir webscraping betiği kurdum. Kazıma için toplamda yaklaşık 200 URL var. Komut ilk önce 20-30 URL'lerden sonra iyi çalışır (başarısız olduğunda rastgele göründüğü gibi daha az/daha az olabilir ve herhangi bir URL ile ilgili olmayabilir) Python'da aşağıdaki hatayı alıyorum:Selenium GhostDriver'a bağlanamıyor (ancak bazen)
selenium.common.exceptions.WebDriverException: Message: 'Can not connect to GhostDriver'
ve ghostdriver.log:
PhantomJS is launching GhostDriver...
[ERROR - 2014-07-04T17:27:37.519Z] GhostDriver - main.fail - {"message":"Could not start Ghost Driver","line":82,"sourceId":140692115795456,"sourceURL":":/ghostdriver/main.js","stack":"Error: Could not start Ghost Driver\n at :/ghostdriver/main.js:82","stackArray":[{"sourceURL":":/ghostdriver/main.js","line":82}]}
Ben aramalara ve SO üzerinde soruların çoğunu onlar bile tek bir URL koşamam görünmektedir. Komut dosyasının ortasında hatanın oluştuğu yeri bulduğum diğer tek soru ise this one ve cevabın phantomjs'i yaptığım son sürüme yükseltmektir. Diğer cevap, bu URL'yi tekrar denemeyi ve URL’nin tekrar başarısız olmasından dolayı iyi bir çözüm olmadığını söylüyor.
Python 2.7.6
for url in ['example.com/1/', 'example.com/2/', 'example.com/3/', .. , ..]:
user_agent = 'Chrome'
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap['phantomjs.page.settings.userAgent'] = user_agent
driver = webdriver.PhantomJS(executable_path='/usr/bin/phantomjs', desired_capabilities=dcap)
driver.get(url)
'row.url' nedir? –
@PadraicCunningham: Typo. Sabit. –
phantomjs'i nasıl kurdunuz? –