我正在运行一个 docker 容器,其中使用以下命令安装了 docker:
docker run -v /Path/to/service:/src/service -v /var/run/docker.sock:/var/run/docker.sock --net=host image-name python run.py
Run Code Online (Sandbox Code Playgroud)
这将运行一个 python 脚本,该脚本创建一个data文件夹/src并填充它。打印时os.listdir('/src/data'),我得到文件列表。
然后,我从该容器内运行一个容器data,使用docker-py.
volumes = {'/src/data': {'bind': '/src', 'mode': 'rw'}}
client.containers.run(image, command='ls data', name=container_key, network='host', volumes=volumes)
Run Code Online (Sandbox Code Playgroud)
它打印:
Starting with UID: 0 and HOME: /src\n0\n'
Run Code Online (Sandbox Code Playgroud)
这意味着data已安装,但为空。我究竟做错了什么 ?
我在Mac OS X上使用全局PhantomJS进行多个Javascript和Python selenium项目.我第一次使用virtualenv建立了一个虚拟环境:
virtualenv Python3.5 Path/To/MyEnvironnement
Run Code Online (Sandbox Code Playgroud)
然后 :
Path/To/MyEnvironnement
. bin/activate
which phantomjs
Run Code Online (Sandbox Code Playgroud)
...返回我的全球硒:/Users/Me/.npm-packages/bin/phantomjs
但每次我打电话:
driver = webdriver.PhantomJS(executable_path=r'/Users/Me/.npm-packages/bin/phantomjs')
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Traceback (most recent call last):
File "/Path/To/MyEnvironnement/script/spider/crawl/Urls.py", line 194, in <module>
init_driver()
File "/Path/To/MyEnvironnement/script/spider/crawl/Urls.py", line 29, in init_driver
driver = webdriver.PhantomJS(executable_path=r'/Users/Me/.npm-packages/bin/phantomjs')
File "/Path/To/MyEnvironnement/lib/python3.5/site-packages/selenium/webdriver/phantomjs/webdriver.py", line 52, in __init__
self.service.start()
File "/Path/To/MyEnvironnement/lib/python3.5/site-packages/selenium/webdriver/common/service.py", line 86, in start
self.assert_process_still_running()
File "/Path/To/MyEnvironnement/lib/python3.5/site-packages/selenium/webdriver/common/service.py", line 99, in assert_process_still_running
% (self.path, return_code)
selenium.common.exceptions.WebDriverException: Message: Service /Users/Me/.npm-packages/bin/phantomjs unexpectedly exited. Status code was: 127
Run Code Online (Sandbox Code Playgroud)
自从我第一次遇到这个问题以来已经24小时了,我几乎阅读了所有可以引用它的帖子.
我试图在没有成功的情况下在virtualenv中创建一个nodeenv:在python virtualenv中为selenium项目运行phantomjs
我正在尝试解析节点服务器内的 csv。
我决定尝试使用“npm install csv”安装的 csv 模块
当我执行下面的代码时,日志显示行的正确值。但我无法通过承诺在我的环境中分享来导出这个结果。
var parse = require('csv-parse')
var csvPromise = fs.readFile('path/to/file.csv', function
(err, fileData) {
return parse(fileData, {}, function(err, rows) {
console.log('rows', rows, err)
return rows ;
})
})
Run Code Online (Sandbox Code Playgroud)
我希望能够在多个地方调用以下代码。
csvPromise.then(function (res) {return res ;})
Run Code Online (Sandbox Code Playgroud)
我尝试了多种方法但找不到解决方案。我该如何处理?