r语言 - 来自investing.com的投资组合数据集



我是一个网络抓取新手,我被这个困住了。

我的目标是生成一个从'2018-01-01'到' 20121-12-31 '的历史数据表,但我不知道如何做到这一点。

我代码:

library(tidyquant)    # To download the data. Datos bursátiles.
library(plotly)       # To create interactive charts
library(timetk)       # To manipulate the data series
library(tidyr)        # Tidy format excel format
library(ggplot2)
library(forcats)      # Predictions
library(dplyr)
library(httr)
library(rvest)
url<-"https://es.investing.com/equities/home-depot-historical-data"
url%>%  
GET(from = '2018-01-01',
to = '2021-12-31')%>%
http_status()
dolar_table<-url%>%
read_html()%>%
html_node('#curr_table', )%>%
html_table()%>%
tbl_df()
html_table
Serie<-dolar_table%>%
rename('Cierre'='Último')%>%
mutate(Fecha=(gsub('\.','-',Fecha)),
Apertura=gsub("\.","",Apertura),
Apertura=gsub(",",".",Apertura),
Apertura=as.numeric(Apertura),
Cierre=gsub("\.","",Cierre),
Cierre=gsub(",",".",Cierre),
Cierre=as.numeric(Cierre))%>%
select(c(Fecha,Apertura,Cierre))

Serie$Fecha<-lubridate::dmy(Serie$Fecha)
Serie

至少它返回一个漂亮的表,但日期不是我需要的!

同样,我必须为不止一只股票这样做。我有一个5只股票的投资组合,我不知道如何将我的股票连接到同一个数据集中。

希望有人知道如何进行。

我已经能够使用以下代码提取表:

library(RSelenium)
library(rvest)
shell('docker run -d -p 4446:4444 selenium/standalone-firefox')
remDr <- remoteDriver(remoteServerAddr = "localhost", port = 4446L, browserName = "firefox")
url <- "https://es.investing.com/equities/home-depot-historical-data"
remDr$open()
remDr$navigate(url)
web_Obj_Date_Picker <- remDr$findElement('class name', 'historical-data_history-date-picker-wrapper__dDOuq')
web_Obj_Date_Picker$clickElement()
java_Script <- paste0("scroll(0,", 400, ")")
remDr$executeScript(java_Script)
obj_Date <- web_Obj_Date_Picker$findChildElements('tag name', 'input')
obj_Date[[1]]$sendKeysToElement(list(value = "2021-01-01"))
obj_Date[[2]]$sendKeysToElement(list(value = '2021-06-01'))
web_Obj_Accept_Button <- remDr$findElement('class name', 'HistoryDatePicker_arrow-icon__NwxN4')
web_Obj_Accept_Button$clickElement()
for(i in 1 : 200)
{
print(i)
java_Script <- paste0("scroll(0,", i * 5, ")")
remDr$executeScript(java_Script)
}
web_Obj <- remDr$findElement("xpath", '/html/body/div/div[2]/div/div/div[2]/main/div/div[7]/div/div/div[3]/div/table')
table <- web_Obj$getElementText()[[1]]
strsplit(table, "n")
[[1]]
[1] "Fecha"                                                "Último"                                              
[3] "Apertura"                                             "Máximo"                                              
[5] "Mínimo"                                               "Vol."                                                
[7] "% var."                                               "01.06.2021 316,31 320,66 321,26 315,17 3,55M -0.82%" 
[9] "28.05.2021 318,91 320,37 321,51 318,85 3,20M +0.04%"  "27.05.2021 318,77 317,30 320,41 317,30 3,73M +0.45%" 
[11] "26.05.2021 317,33 317,81 321,38 316,68 2,88M +0.18%"  "25.05.2021 316,75 315,53 317,10 314,25 3,52M +0.61%" 
[13] "24.05.2021 314,84 316,84 318,74 314,59 2,93M -0.29%"  "21.05.2021 315,77 317,00 319,28 314,45 3,92M -0.04%" 
[15] "20.05.2021 315,90 314,89 319,71 314,89 3,85M +0.46%"  "19.05.2021 314,45 312,00 314,75 309,07 5,24M -0.73%" 
[17] "18.05.2021 316,75 320,00 324,55 314,78 7,01M -1.02%"  "17.05.2021 320,01 321,00 322,83 315,31 4,39M -1.12%" 
[19] "14.05.2021 323,63 326,29 327,32 321,86 4,00M -0.55%"  "13.05.2021 325,42 319,00 327,42 318,69 5,16M +2.66%" 
[21] "12.05.2021 317,00 326,52 328,80 316,27 5,82M -4.13%"  "11.05.2021 330,66 337,55 338,00 328,21 5,50M -3.07%" 
[23] "10.05.2021 341,12 340,45 345,69 339,54 4,84M +0.55%"  "07.05.2021 339,25 336,68 339,81 335,53 3,00M +0.49%" 
[25] "06.05.2021 337,58 333,67 337,81 333,23 3,54M +1.67%"  "05.05.2021 332,05 334,25 335,71 331,08 3,16M -0.22%" 
[27] "04.05.2021 332,77 329,12 333,23 328,88 3,95M +0.76%"  "03.05.2021 330,27 326,28 331,62 325,68 3,68M +2.04%" 
[29] "30.04.2021 323,67 325,05 325,83 321,61 3,12M -0.51%"  "29.04.2021 325,34 321,71 325,79 321,08 3,26M +1.76%" 
[31] "28.04.2021 319,71 321,95 322,96 319,30 2,71M -0.27%"  "27.04.2021 320,59 320,50 322,47 320,38 3,34M +0.19%" 
[33] "26.04.2021 319,99 323,68 324,00 319,32 2,85M -1.20%"  "23.04.2021 323,89 322,19 325,53 319,58 3,41M +0.76%" 
[35] "22.04.2021 321,46 326,20 326,43 318,84 4,87M -1.38%"  "21.04.2021 325,95 324,96 327,91 323,89 3,74M +0.61%" 
[37] "20.04.2021 323,96 326,00 327,69 322,16 4,46M -0.88%"  "19.04.2021 326,85 326,49 328,83 325,44 4,49M -0.37%" 
[39] "16.04.2021 328,08 324,84 328,67 323,93 6,21M +1.65%"  "15.04.2021 322,74 320,21 323,40 320,05 3,51M +0.85%" 
[41] "14.04.2021 320,02 319,71 322,70 319,29 3,44M -0.12%"  "13.04.2021 320,40 320,53 320,90 317,00 3,64M -0.12%" 
[43] "12.04.2021 320,79 317,72 321,31 317,31 3,56M +0.49%"  "09.04.2021 319,23 315,37 319,32 314,75 4,61M +1.53%" 
[45] "08.04.2021 314,43 312,70 315,25 310,59 4,04M +0.63%"  "07.04.2021 312,47 312,84 315,14 310,93 3,80M -0.42%" 
[47] "06.04.2021 313,78 313,61 315,94 313,13 3,99M -0.51%"  "05.04.2021 315,40 309,84 315,85 309,74 4,70M +2.49%" 
[49] "01.04.2021 307,75 306,88 308,55 303,89 3,92M +0.82%"  "31.03.2021 305,25 305,50 308,02 304,14 4,74M +0.14%" 
[51] "30.03.2021 304,82 301,65 305,68 300,04 5,05M +0.87%"  "29.03.2021 302,20 303,30 305,55 299,93 4,64M -0.53%" 
[53] "26.03.2021 303,81 297,34 304,00 296,03 5,87M +2.23%"  "25.03.2021 297,18 293,03 297,88 292,45 5,37M +1.51%" 
[55] "24.03.2021 292,75 289,26 296,78 288,99 4,84M +0.96%"  "23.03.2021 289,98 289,61 293,43 288,94 4,80M +0.36%" 
[57] "22.03.2021 288,94 286,50 290,33 284,20 5,56M -0.06%"  "19.03.2021 289,10 283,64 289,10 282,43 13,73M +2.10%"
[59] "18.03.2021 283,16 279,03 285,47 277,76 4,81M +1.12%"  "17.03.2021 280,03 281,14 283,88 279,25 5,91M -0.73%" 
[61] "16.03.2021 282,08 278,54 282,52 277,65 4,46M +1.27%"  "15.03.2021 278,54 274,50 279,65 274,34 4,36M +1.99%" 
[63] "12.03.2021 273,10 267,45 273,81 266,76 4,19M +1.58%"  "11.03.2021 268,85 268,60 270,78 267,20 4,37M +0.98%" 
[65] "10.03.2021 266,24 265,92 268,75 264,08 3,80M +0.48%"  "09.03.2021 264,96 262,73 267,57 261,79 6,63M +2.29%" 
[67] "08.03.2021 259,03 254,23 263,23 252,52 5,04M +2.17%"  "05.03.2021 253,52 252,26 254,20 246,59 6,35M +1.03%" 
[69] "04.03.2021 250,93 256,00 256,86 247,10 7,15M -2.50%"  "03.03.2021 257,36 259,28 260,50 256,01 4,26M -1.13%" 
[71] "02.03.2021 260,29 261,68 263,11 259,77 3,74M -0.51%"  "01.03.2021 261,62 258,81 262,48 258,47 4,53M +1.27%" 
[73] "26.02.2021 258,34 257,77 260,24 256,11 7,87M +1.21%"  "25.02.2021 255,25 259,75 260,90 254,71 6,55M -1.82%" 
[75] "24.02.2021 259,97 263,23 266,99 254,03 14,51M -2.72%" "23.02.2021 267,24 269,38 269,67 257,58 12,11M -3.12%"
[77] "22.02.2021 275,85 278,21 278,49 273,63 4,00M -1.36%"  "19.02.2021 279,64 282,87 283,91 279,44 4,08M -1.20%" 
[79] "18.02.2021 283,05 280,80 284,68 279,83 3,53M +0.76%"  "17.02.2021 280,92 275,54 281,79 275,40 3,54M +2.01%" 
[81] "16.02.2021 275,39 277,01 278,63 274,88 2,87M -0.76%"  "12.02.2021 277,51 277,12 278,71 276,58 2,39M +0.16%" 
[83] "11.02.2021 277,06 277,93 280,25 276,01 2,60M -0.58%"  "10.02.2021 278,69 278,03 278,93 276,25 2,41M +0.69%" 
[85] "09.02.2021 276,77 279,66 280,20 276,62 2,51M -1.16%"  "08.02.2021 280,03 279,69 280,42 276,89 3,48M +0.42%" 
[87] "05.02.2021 278,86 280,29 281,76 277,81 2,39M +0.01%"  "04.02.2021 278,82 274,25 279,44 274,25 2,98M +1.70%" 
[89] "03.02.2021 274,17 271,89 275,72 270,71 2,80M +0.74%"  "02.02.2021 272,16 270,00 275,69 269,99 4,11M +0.77%" 
[91] "01.02.2021 270,07 271,23 272,65 267,25 3,71M -0.28%"  "29.01.2021 270,82 275,81 277,06 270,03 4,08M -2.60%" 
[93] "28.01.2021 278,05 276,17 282,96 274,93 3,46M +1.46%"  "27.01.2021 274,05 279,99 280,81 273,08 4,34M -3.03%" 
[95] "26.01.2021 282,60 285,42 285,65 281,70 2,47M -0.87%"  "25.01.2021 285,08 283,85 285,77 281,42 4,03M +0.38%" 
[97] "22.01.2021 284,00 279,26 285,08 277,87 4,50M +1.77%"  "21.01.2021 279,05 276,22 280,70 275,67 4,40M +1.73%" 
[99] "20.01.2021 274,30 273,25 277,21 271,50 3,50M +0.41%"  "19.01.2021 273,19 278,00 278,00 273,02 3,62M -0.87%" 
[101] "15.01.2021 275,59 268,63 276,39 268,00 5,13M +2.70%"  "14.01.2021 268,34 274,50 274,89 267,67 4,64M -2.08%" 
[103] "13.01.2021 274,05 278,31 280,48 273,94 3,92M -0.83%"  "12.01.2021 276,33 271,11 277,94 270,65 4,03M +1.88%" 
[105] "11.01.2021 271,23 267,47 273,37 267,26 3,77M +0.80%"  "08.01.2021 269,09 267,35 270,73 267,00 3,76M +1.06%" 
[107] "07.01.2021 266,26 266,95 268,78 266,17 3,83M -0.49%"  "06.01.2021 267,57 264,06 269,77 261,87 3,95M +0.57%" 
[109] "05.01.2021 266,05 262,66 266,53 262,26 3,82M +0.81%"  "04.01.2021 263,92 266,01 266,44 261,06 5,00M -0.64%"

最新更新