通过taskscheduleR

时间:2017-12-20 09:12:52

标签: r taskscheduler webpage-screenshot

我保证我不是网站政策的专家,而且我最终得到的所有信息都将用于教学研究,因为我是学生。

我的目的是获得一系列网页图像(我将在其中应用图像识别技术)。我想在R中写一些代码行,让电脑在某些时候自动制作截图。

我认为Rpackages taskscheduleRwebshot可能对我有用。

我写了第一个脚本,它是调度程序:

library(taskscheduleR)
myscript <- system.file("extdata", "shooter.R", package = "taskscheduleR") 

## run script
taskscheduler_create(taskname = "SCHEDULE_TRAINING", rscript = myscript,  
                     schedule = "MINUTE", starttime = format(Sys.time() + 5, 
                     "%H:%M"))

## delete the tasks
taskscheduler_delete(taskname = "SCHEDULE_TRAINING")

然后我写了第二个脚本来制作截图(shooter.R):

library(webshot)
#webshot::install_phantomjs() # only the first time 

URL="https://www.hattrick.org"

time0=gsub(":","",Sys.time())
time=gsub(" ","",time0)
out=paste(time,".png",sep="")

webshot(URL, out, delay=1)

如果我单独执行它并且屏幕截图显示在我的文件夹中,则第二个脚本有效,但是如果我通过第一个脚本执行脚本它不起作用(即使在输出中我没有得到任何错误)和没有截图。

有人可以帮助我,或者知道我可以做些什么来实现我的目标?

1 个答案:

答案 0 :(得分:1)

创建新的记事本并在下面写下并将其保存到r.bat

start /min T:\Repository\Mehul\shooter.R
  • 避开路径中的空间。
  • 编写r脚本的完整路径。
  • 创建计划任务时运行r.bat而不是shooter.R
  • 设置r脚本在Rscript.exe中的默认程序上运行,该程序将从.. \ R-3.4.3 \ bin \ Rscript.exe中找到