scrapy phantomjs ghostdriver

scrapy - ¿Cómo deshabilitar o cambiar la ruta de ghostdriver.log?



phantomjs (2)

La pregunta es directa, pero algún contexto puede ayudar.

Estoy tratando de implementar scrapy mientras uso selenio y phantomjs como descargador. Pero el problema es que sigue diciendo permiso denegado al intentar implementar. Así que quiero cambiar la ruta de ghostdriver.log o simplemente deshabilitarla. En cuanto a phantomjs -h y ghostdriver github page No pude encontrar la respuesta, mi amigo google también me decepcionó.

$ scrapy deploy Building egg of crawler-1370960743 ''build/scripts-2.7'' does not exist -- can''t clean it zip_safe flag not set; analyzing archive contents... tests.fake_responses.__init__: module references __file__ Deploying crawler-1370960743 to http://localhost:6800/addversion.json Server response (200): Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/scrapyd/webservice.py", line 18, in render return JsonResource.render(self, txrequest) File "/usr/lib/pymodules/python2.7/scrapy/utils/txweb.py", line 10, in render r = resource.Resource.render(self, txrequest) File "/usr/lib/python2.7/dist-packages/twisted/web/resource.py", line 216, in render return m(request) File "/usr/lib/pymodules/python2.7/scrapyd/webservice.py", line 66, in render_POST spiders = get_spider_list(project) File "/usr/lib/pymodules/python2.7/scrapyd/utils.py", line 65, in get_spider_list raise RuntimeError(msg.splitlines()[-1]) RuntimeError: IOError: [Errno 13] Permission denied: ''ghostdriver.log


Cuando use el controlador PhantomJS agregue el siguiente parámetro:

driver = webdriver.PhantomJS(service_log_path=''/var/log/phantomjs/ghostdriver.log'')

El código relacionado, sería bueno tener una opción para desactivar el registro, aunque parece que no es compatible:

selenio / webdriver / phantomjs / service.py

class Service(object): """ Object that manages the starting and stopping of PhantomJS / Ghostdriver """ def __init__(self, executable_path, port=0, service_args=None, log_path=None): """ Creates a new instance of the Service :Args: - executable_path : Path to PhantomJS binary - port : Port the service is running on - service_args : A List of other command line options to pass to PhantomJS - log_path: Path for PhantomJS service to log to """ self.port = port self.path = executable_path self.service_args= service_args if self.port == 0: self.port = utils.free_port() if self.service_args is None: self.service_args = [] self.service_args.insert(0, self.path) self.service_args.append("--webdriver=%d" % self.port) if not log_path: log_path = "ghostdriver.log" self._log = open(log_path, ''w'')


#Reduce logging level driver = webdriver.PhantomJS(service_args=["--webdriver-loglevel=SEVERE"]) #Remove logging import os driver = webdriver.PhantomJS(service_log_path=os.path.devnull)