标签: tmp

Python Firefox Webdriver tmp文件

我的python应用程序在几个小时的工作中使用Selenium Webdriver加载网页总共20000页.我的问题是"某些东西"正在创建大量的tmp文件,填满了我的所有硬盘.例如,今天早上应用程序在6小时的工作中生成70GB的tmp文件:(重启Ubuntu后,所有这些文件都消失了.我认为负责的是Firefox.

这种情况在Linux和OS X上都会发生.

def launchSelenium (url):
    profile = webdriver.FirefoxProfile()
    profile.set_preference("network.proxy.type", 1)
    profile.set_preference("network.proxy.http", "127.0.0.1")
    profile.set_preference("network.proxy.http_port", 8080)
    profile.set_preference("webdriver.load.strategy", "fast")
    profile.set_preference("permissions.default.stylesheet", 2)
    profile.set_preference("permissions.default.images", 2)
    profile.set_preference("dom.ipc.plugins.enabled.libflashplayer.so", "false")
    profile.set_preference("browser.sessionstore.enabled", "false")
    profile.set_preference("browser.cache.disk.enable", "false")
    profile.update_preferences()

    driver = webdriver.Firefox(firefox_profile=profile)

    driver.get(url)
    try:
        element = driver.find_element_by_xpath("//button[@title='Statistics']").click()
    except NoSuchElementException:
        print "Not available"
        driver.close()
        return 0
    driver.close()
    return 1
Run Code Online (Sandbox Code Playgroud)

我在Firefox Profile中添加了最后两个首选项,试图解决这个问题,但没有任何改变.

难道我做错了什么?Selenium有一个错误?谢谢

python tmp selenium-webdriver

11
推荐指数
1
解决办法
2442
查看次数

Ruby:无法找到临时目录

我的Passenger Rails应用程序中出现了大约500个错误.查看日志时,乘客无法访问/ tmp目录.我已经验证它存在并且具有对root的RW访问权限,然后尝试了www-data.这里发生了什么?

 2014-01-14 16:01:16.6573 20624/7fa7c8806700 Pool2/SmartSpawner.h:301 ]: Preloader for /var/www/socialrest_homepage started on PID 20686, listening on unix:/tmp/passenger.1.0.20618/generation-0/backends/preloader.20686
App 20704 stdout: 
[Tue Jan 14 16:01:17 2014] [error] [client 168.215.171.129] Premature end of script headers: 
App 20686 stderr: /usr/local/rvm/rubies/ruby-2.0.0-p353/lib/ruby/2.0.0/tmpdir.rb:34:in `tmpdir': could not find a temporary directory (ArgumentError)
App 20686 stderr:   from /usr/local/rvm/gems/ruby-2.0.0-p353/gems/passenger-4.0.33/lib/phusion_passenger/utils/tmpio.rb:17:in `new'
App 20686 stderr:   from /usr/local/rvm/gems/ruby-2.0.0-p353/gems/passenger-4.0.33/lib/phusion_passenger/utils/tee_input.rb:99:in `initialize'
App 20686 stderr:   from /usr/local/rvm/gems/ruby-2.0.0-p353/gems/passenger-4.0.33/lib/phusion_passenger/rack/thread_handler_extension.rb:55:in `new'
App 20686 stderr:   from /usr/local/rvm/gems/ruby-2.0.0-p353/gems/passenger-4.0.33/lib/phusion_passenger/rack/thread_handler_extension.rb:55:in `process_request'
App 20686 stderr:   from /usr/local/rvm/gems/ruby-2.0.0-p353/gems/passenger-4.0.33/lib/phusion_passenger/request_handler/thread_handler.rb:141:in `accept_and_process_next_request'
App 20686 stderr:   from …
Run Code Online (Sandbox Code Playgroud)

ruby tmp

11
推荐指数
3
解决办法
1万
查看次数

Tomcat Server在tmp中创建目录

每次我的嵌入式虚拟tomcat服务器运行(spring boot)时,它都会创建一个/tmp/名为的目录结构tomcat.##########################.8080(我猜8080是用于端口或其他东西,但8080是一致的).这种结构不会占用太多空间,但经常运行tomcat服务器后,这可能会填满.我可以作为可配置选项阻止这种情况发生吗?

创建的路径的示例可以类似于: /tmp/tomcat.1185139485157901.8080/work/Tomcat/localhost/_/ SESSIONS.ser WEB-INF/等等.等.

linux tomcat tmp server

11
推荐指数
1
解决办法
3311
查看次数

FFMPEG无法读取Heroku上/ tmp /中的文件

我在heroku上创建了一个使用imagemagick的nodejs应用程序.我正在做这个操作:

require('child_process').exec(`convert -quiet -delay 1 output.avi ${gif}`);
Run Code Online (Sandbox Code Playgroud)

这应该output.avi(存在)转换为gif文件.在这种情况下,gif"/app/temp/gifs/xstrycatdq.gif".此命令在我的本地Windows机器上完美运行.因为我使用path模块来获取变量path.join__dirname.

我已经安装了heroku buildpack:

我收到的错误是:

Command failed: convert -quiet -delay 1 output.avi /app/temp/gifs/xstrycatdq.gif
convert: DelegateFailed `'ffmpeg' -nostdin -v -1 -vframes %S -i '%i' -vcodec pam -an -f rawvideo -y '%u.pam' 2> '%Z'' @ error/delegate.c/InvokeDelegate/1919.
convert: UnableToOpenBlob `magick-93R4VJcemPz0z1.pam': No such file or directory @ error/blob.c/OpenBlob/2705.
convert: NoImagesDefined `/app/temp/gifs/xstrycatdq.gif' @ error/convert.c/ConvertImageCommand/3257.
Run Code Online (Sandbox Code Playgroud)

似乎无法写入/ tmp /目录或任何内容.我也尝试过mkdir /tmp/但bash告诉我这个目录已经存在.

我也试过用环境变量改变imagemagick的临时目录export MAGICK_TMPDIR="temp".

有帮助吗?

编辑:变量现在是绝对的.

imagemagick heroku tmp node.js

11
推荐指数
1
解决办法
466
查看次数

无法创建tempDir,java.io.tmpdir设置为C:\ Windows \

我正在使用嵌入式tomcat的Spring Boot,一切正常,我突然得到了错误:

Caused by: org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to create tempDir. java.io.tmpdir is set to C:\Windows\
    at org.springframework.boot.context.embedded.AbstractEmbeddedServletContainerFactory.createTempDir(AbstractEmbeddedServletContainerFactory.java:183)
    at org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainerFactory.getEmbeddedServletContainer(TomcatEmbeddedServletContainerFactory.java:165)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.createEmbeddedServletContainer(EmbeddedWebApplicationContext.java:164)
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.onRefresh(EmbeddedWebApplicationContext.java:134)
    ... 11 common frames omitted
Caused by: java.io.IOException: Access is denied
    at java.io.WinNTFileSystem.createFileExclusively(Native Method)
    at java.io.File.createTempFile(File.java:2024)
    at java.io.File.createTempFile(File.java:2070)
    at org.springframework.boot.context.embedded.AbstractEmbeddedServletContainerFactory.createTempDir(AbstractEmbeddedServletContainerFactory.java:174)
    ... 14 common frames omitted
Run Code Online (Sandbox Code Playgroud)

我没有对用户或系统变量进行任何操作.

我的TEMP 用户变量正在查看C:/ Users/me/AppData/Local/Temp,我猜tomcat必须使用系统1的这个值,实际上是C:/ Windows/Temp

tomcat tmp spring-boot

11
推荐指数
2
解决办法
6197
查看次数

Heroku - 如何写入"tmp"目录?

我需要使用tmpHeroku(Cedar)上的文件夹来写一些临时数据,我试着这样做:

open("#{Rails.root}/tmp/#{result['filename']}", 'wb') do |file|
  file.write open(image_url).read 
end
Run Code Online (Sandbox Code Playgroud)

但这会产生错误

Errno::ENOENT: No such file or directory - /app/tmp/image-2.png
Run Code Online (Sandbox Code Playgroud)

我正在尝试这个代码,它在localhost上正常运行,但我不能让它在Heroku上运行.

将一些文件保存到tmpHeroku(Cedar堆栈)目录的正确方法是什么?

谢谢

编辑: 我正在运行延迟作业的方法,需要访问tmp文件.

编辑2: 我在做什么:

files.each_with_index do |f, index|
      unless f.nil?
        result = JSON.parse(buffer)
        filename = "#{Time.now.to_i.to_s}_#{result['filename']}" # thumbnail name
        thumb_filename = "#{Rails.root}/tmp/#{filename}"

        image_url = f.file_url+"/convert?rotate=exif"

        open("#{Rails.root}/tmp/#{result['filename']}", 'wb') do |file|
          file.write open(image_url).read 
        end

        img = Magick::Image.read(image_url).first
        target = Magick::Image.new(150, 150) do
          self.background_color = 'white'
        end
        img.resize_to_fit!(150, 150)
        target.composite(img, Magick::CenterGravity, Magick::CopyCompositeOp).write(thumb_filename)

        key = File.basename(filename)
        s3.buckets[bucket_name].objects[key].write(:file => thumb_filename)

        # …
Run Code Online (Sandbox Code Playgroud)

ruby directory ruby-on-rails heroku tmp

10
推荐指数
1
解决办法
2万
查看次数

iPhone SDK获取tmp目录

如何在iPhone或iPad上获取tmp目录?

如果我使用NSTemporaryDirectory()创建一个文件,它不会保存到模拟器临时目录.

filesystems iphone directory tmp

9
推荐指数
1
解决办法
6897
查看次数

写入tmp文件夹

编辑1

这个问题涉及MANGOPAY API的用户.我的问题是我无法将API写入该tmp文件夹.

我成功地让API写入http://fakedomain.com/apifolder/blank.txt并获得适当的输出.

然后我跑了剧本http://fake.com/apifolder/demos/iswrite.phphttp://fakedomain.com/apifolder/blank.txt有最小的工作代码我可以测试的tmp文件夹中.这是脚本中的代码:

<?php

$filename = 'blank.txt';


echo "<br>";


file_exists($filename);

echo "<br>";



if (file_exists($filename)) {
    echo "The file $filename exists";
} else {
    echo "The file $filename does not exist";
}

echo "<br>";

if (is_writable($filename)) {
    echo 'The file is writable';
} else {
    echo 'The file is not writable';
}

?>
Run Code Online (Sandbox Code Playgroud)

它给了我输出

The file blank.txt exists The file is writable

所以那里都很好.我使用Filezilla创建了以下具有以下权限的文件:

在此输入图像描述

在脚本中http://fake.com/apifolder/demos/iswrite.php我已将filename变量更改为$filename …

php linux rest command-line tmp

9
推荐指数
2
解决办法
1837
查看次数

如何配置ImageMagick不使用任何临时文件?

我试图在不触及文件系统的情况下运行ImageMagick:从内存/网络读取图像数据,并将其作为blob写回套接字.

但是,ImageMagick不断尝试编写临时文件,这些文件由于测试中止/失败而填满我的测试系统,或者在磁盘速度极慢的系统上引起问题:这是一个奇怪的约束,但我的许多转换主机都是嵌入式系统使用块设备,响应任何操作都非常慢,甚至是stat()s.

问题:

  1. 有没有办法配置ImageMagick在图像处理期间不接触磁盘?假设已经加载了ImageMagick将使用的所有必需模块,并且没有任何ImageMagick功能将处理输出到与文件系统通信的子进程用过的.

  2. 这样做有什么副作用?我可以处理不适合内存失败的处理,而不是回到磁盘上.

我正在使用C++或Perl ImageMagick API进行转换,而不是convert实用程序.但是,如果另一个绑定支持这一点,我很好地切换平台.

我试过的

  • 我已经设置了MAGICK_TEMPORARY_PATH各种各样的地方,包括/dev/nullPOSIX./dev/null有时似乎工作,但我的目标系统不是POSIX,所以我不确定我是否可以指望它.而不是愚弄临时文件管理系统,我更喜欢我可以信任的东西,首先禁用对临时文件的需求.
  • 我已经使用了该registry:temporary-path选项,结果相似.
  • 将各种临时路径选项设置为不存在/不可用的位置(例如,/dev/null或者不可写的位置)通常会导致在我的程序启动的目录中创建临时文件.如果该目录是不可写的,我已经看到临时文件在系统/tmp目录中创建,即使代码被告知不使用它.这些似乎发生在特殊情况下(例如segfaulting/OOMing/kill -9'd情况),所以我认为通常可以在这些地方创建文件,但通常会清理它们.

c++ perl imagemagick temporary-files tmp

8
推荐指数
1
解决办法
828
查看次数

使用python写入AWS Lambda中的/ tmp目录

目标

我正在尝试将zip文件写入python aws lambda的/ tmp文件夹中,因此我可以在压缩之前提取操作,并将其放入s3存储桶中。

问题

Os Errno30只读文件系统

在我的计算机上对该代码进行了本地测试,以确保在将文件上传到AWS之前,该文件将写入我的工作目录。这是我要使用的代码。

file = downloadFile() #This is api call that returns binary zip object
newFile = open('/tmp/myZip.zip','wb')
newFile.write(file)
extractAll('/tmp/myZip.zip')
Run Code Online (Sandbox Code Playgroud)

这是尝试提取zip文件的代码

def extractAll(self,source):
        with zipfile.ZipFile(source, 'r') as archive:
            archive.extractall()
Run Code Online (Sandbox Code Playgroud)

这是痕迹

[Errno 30] Read-only file system: '/var/task/test-deploy': OSError
Traceback (most recent call last):
File "/var/task/web.py", line 31, in web
performAction(bb, eventBody)
File "/var/task/src/api/web.py", line 42, in performAction
zipHelper.extractAll('/tmp/myZip.zip')
File "/var/task/src/shared/utils/zipfilehelper.py", line 24, in extractAll
archive.extractall()
File "/var/lang/lib/python3.6/zipfile.py", line 1491, in extractall
self.extract(zipinfo, path, pwd)
File …
Run Code Online (Sandbox Code Playgroud)

python lambda errno amazon-web-services tmp

8
推荐指数
1
解决办法
1万
查看次数