返回for()循环的值,就像它是R中的函数一样

返回for()循环的值,就像它是R中的函数一样,r,for-loop,apache-nifi,R,For Loop,Apache Nifi,我在R脚本中有一个for循环: url <- "https://example.com" page <- html_session(url, config(ssl_verifypeer = FALSE)) links <- page %>% html_nodes("td") %>% html_nodes("tr") %>% html_nodes("a") %>% html_attr("href") base_names <

我在
R
脚本中有一个
for
循环:

url <- "https://example.com"
page <- html_session(url, config(ssl_verifypeer = FALSE))

links <- page %>% 
  html_nodes("td") %>% 
  html_nodes("tr") %>%
  html_nodes("a") %>% 
  html_attr("href")

base_names <- page %>%
  html_nodes("td") %>% 
  html_nodes("tr") %>%
  html_nodes("a") %>% 
  html_attr("href") %>%
  basename()

for(i in 1:length(links)) {

  site <- html_session(URLencode(
    paste0("https://example.com", links[i])),
    config(ssl_verifypeer = FALSE))

  writeBin(site$response$content, base_names[i])
} 
url%
html_节点(“a”)%>%
html_attr(“href”)
基本名称%
html_节点(“td”)%>%
html_节点(“tr”)%>%
html_节点(“a”)%>%
html_attr(“href”)%%>%
basename()
用于(i/1:长度(链接)){
站点如果您的目的是(1)保存输出(使用
writeBin
和返回值(在
列表中),请尝试以下操作:

out如果您的目的是(1)保存输出(使用
writeBin
和返回值(在
列表中),请尝试以下操作:



out而不是
for
循环,你可以使用
out-Woops,修复了名称错误@r2evans,我的错。
bn
在你的评论中指的是什么?
bn
是我在匿名函数中用作第二个参数的任意名称;
Map
“zips”将
links
base_name
的成对元素组合在一起,分别将第一个元素分配给函数中的
link
bn
。如果
lappy(links,function(link){…})
只与链接一起工作,那么
映射(function(link,bn){…},links,base_name)
与这两者是等价的。因此
Map(myfunc,links,base_name)
展开到
myfunc(links[1],base_name[1])
,然后
myfunc(links[2],base_name[2])
Map
始终返回一个
列表,而
mappy
可能返回一个向量(类似于
lappy
-vs-
sapply
)。我正在尝试修改您的第一条评论(顺便说一句,感谢您的逻辑)。我想我应该去掉分号?为这个愚蠢的问题道歉。我对
Map
不太熟悉。很难用注释格式来描述。如果你想输入答案,那会很有帮助,而不是
for
循环,你可以使用
out-Woops,修复名称错误@r2evans,我的坏。W
bn
在您的评论中指的是什么?
bn
是我在匿名函数中用作第二个参数的任意名称;
Map
“zips”将
links
base_name
的成对元素组合在一起,分别将第一个元素分配给函数中的
link
bn
。如果
lappy(links,function(link){…})
只与链接一起工作,那么
映射(function(link,bn){…},links,base_name)
与这两者是等价的。因此
Map(myfunc,links,base_name)
展开到
myfunc(links[1],base_name[1])
,然后
myfunc(links[2],base_name[2])
Map
始终返回一个
列表,而
mappy
可能返回一个向量(类似于
lappy
-vs-
sapply
)。我正在尝试修改您的第一条评论(顺便说一句,感谢您的逻辑)。我想我应该去掉分号?为这个愚蠢的问题道歉。我对
Map
不太熟悉。很难想象注释格式。如果你想输入答案,那将很有帮助。在这种情况下,在最后一个
站点$response$content
之前返回
。否则,我认为is是一个很好的展示使用什么而不是循环的窗口。我在哪里可以给你送啤酒?
return
在这里暗示…如果你愿意,可以使用
return(site$response$content)
。如果它返回一堆数字,而不是文档(scraping
.txt
文件),这是错误的吗?(我真的会给你寄啤酒钱,我感谢你的耐心)返回值与
writeBin
创建的文件不同吗?实际上已经计算出来了…它是在容器内的随机NiFi目录中转储文件(只能通过终端看到).我所做的并不理想…但是客户想要…所以在最后一次
site$response$content
之前,你不知道
return
在这种情况下?否则,我认为这是一个很好的展示,展示了使用什么而不是循环。我可以在哪里给你送啤酒?
return
在这里暗示…使用
return(site$response$content)
如果你愿意的话..如果它返回一堆数字,而不是文档(刮取
.txt
文件),那是错的吗?(我真的会给你寄啤酒钱,我感谢你的耐心)返回值是否与由
writeBin
创建的文件不同?实际上已经计算出来了…它将文件转储到容器内的随机NiFi目录中(只能通过终端看到)。我所做的并不理想…但客户希望…所以你知道