R でスクレイピングをするために URL 操作をしたいのです。
以下がコードです。
R
1library(RSelenium) 2library(rvest) 3library(XML) 4 5remDr = remoteDriver(remoteServerAddr = "localhost", port = 4444, browserName = "chrome") 6remDr$open() 7 8iterater <- 1 9max_page <- 3 10patent_linkDF <-data.frame('', '') 11sleep <- 3 12 13url <- 'https://jglobal.jst.go.jp/search/patents#{"category":"3","keyword":"農薬"}' 14remDr$navigate(url) 15planeHtmlList <- remDr$getPageSource() 16fileNmae <- paste(formatC(iterater, width = 5, flag = 0), ".html", sep = "") 17write(unlist(planeHtmlList), fileNmae) 18 19path <- paste(getwd(), fileNmae, sep = "/") 20html <- read_html(path) 21parsed_doc <- htmlParse(html) 22title <- xpathSApply(doc = parsed_doc , path = "//a[@href]", xmlValue) 23link <- xpathSApply(doc = parsed_doc , path = "//a[@href]", xmlGetAttr, "href") 24tempDF <- data.frame(title, link) 25patent_linkDF <- tempDF[-c(1,2, nrow(tempDF)), ] 26iterater <- iterater + 1 27Sys.sleep(sleep) 28 29while(iterater <= max_page){ 30 url <- paste('https://jglobal.jst.go.jp/search/patents#{"category":"3","keyword":"農薬","page":', iterater, "}", sep='') remDr$navigate(url) 31 planeHtmlList <- remDr$getPageSource() 32 fileNmae <- paste(formatC(iterater, width = 5, flag = 0), ".html", sep = "") 33 write(unlist(planeHtmlList), fileNmae) 34 35 path <- paste(getwd(), fileNmae, sep = "/") 36 html <- read_html(path) 37 parsed_doc <- htmlParse(html) 38 title <- xpathSApply(doc = parsed_doc , path = "//a[@href]", xmlValue) 39 link <- xpathSApply(doc = parsed_doc , path = "//a[@href]", xmlGetAttr, "href") 40 tempDF <- data.frame(title, link) 41 patent_page_linkDF <- tempDF[-c(1,2, nrow(tempDF)), ] 42 patent_linkDF <- rbind(patent_linkDF, tempDF); 43 iterater <- iterater + 1 44 Sys.sleep(sleep) 45} 46 47 48write.csv(patent_linkDF, "patent_link.csv") 49 50 51
以下がエラー内容です。
エラー: 予想外の '}' です in "}"
調べてみたところクオーテーション内はそれぞれsyntax check
が入るので}
が閉じていないので怒られているらしいのですが回避方法がわかりません。
回避方法がわかる方がいらっしゃいましたらご教示ください。
回答1件
あなたの回答
tips
プレビュー