Esta atividade teve o objetivo de criar um Robô com o intuito de acompanhar possíveis variações com relação ao preço de um dado produto. O produto escolhido foi um perfume de uma marca conhecida. O site utilizado para a coleta de dados foi: “http://www.boticario.com.br/glamour-secrets-black-des--colonia-75ml-21318/p?idsku=2002624&utm_campaign=googleshop&gclid=EAIaIQobChMIr4XvvL_Q2gIVFA2RCh3JWgf-EAQYAiABEgJ6gfD_BwE”.

https://crontab.guru/ (para ajudar a programar o horário) - O escolhido foi: https://crontab.guru/#*/5_*_*_*_*

Pacote rvest - https://github.com/hadley/rvest

Abaixo, comandos utilizados no R.

suppressPackageStartupMessages(library(rvest))
suppressPackageStartupMessages(library(stringr))
suppressPackageStartupMessages(library(lubridate))




preço <- rep(NA, 10)
for ( i in 1:10){
  Oboticario <- read_html("http://www.boticario.com.br/glamour-secrets-black-des--colonia-75ml-21318/p?idsku=2002624&utm_campaign=googleshop&gclid=EAIaIQobChMIr4XvvL_Q2gIVFA2RCh3JWgf-EAQYAiABEgJ6gfD_BwE")  
  Oboticario %>%
    html_nodes(css = ".skuBestPrice") %>%    
    html_text() %>%
    str_remove(pattern = "R\\$ ") %>%  
    str_remove(pattern = "\\.") %>% 
    str_replace(pattern = ",", replacement = ".") %>% 
    as.numeric() -> preço[i]
  Sys.sleep(1)
  }



hora <- now()
cat(hora %>% as.character,preço ,sep = ",", fill = TRUE)
## 2018-06-18 21:56:29,119.9,119.9,119.9,119.9,119.9,119.9,119.9,119.9,119.9,
## 119.9

Observa-se que o preço do perfume escolhido se manteve. Logo, não houve variação.

library(tidyverse)
## ── Attaching packages ───────────────────────────────────────────────────────────────────────────── tidyverse 1.2.1 ──
## ✔ ggplot2 2.2.1     ✔ readr   1.1.1
## ✔ tibble  1.4.2     ✔ purrr   0.2.5
## ✔ tidyr   0.8.1     ✔ dplyr   0.7.5
## ✔ ggplot2 2.2.1     ✔ forcats 0.3.0
## ── Conflicts ──────────────────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ lubridate::as.difftime() masks base::as.difftime()
## ✖ lubridate::date()        masks base::date()
## ✖ dplyr::filter()          masks stats::filter()
## ✖ readr::guess_encoding()  masks rvest::guess_encoding()
## ✖ lubridate::intersect()   masks base::intersect()
## ✖ dplyr::lag()             masks stats::lag()
## ✖ purrr::pluck()           masks rvest::pluck()
## ✖ lubridate::setdiff()     masks base::setdiff()
## ✖ lubridate::union()       masks base::union()
library(readr)
p <- read_table2("Precos_90.txt",
                  col_types = cols(Data = col_character(),
                                   Hora = col_character()))
Preco <- p %>% top_n(90)
## Selecting by Preço
require(lubridate)
library(ggplot2)
Preco$DataTime <- parse_date_time(paste(Preco$Data, Preco$Hora), '%Y-%m-%d %H:%M:%S')


#Gráfico

ggplot(data = Preco, aes(x= DataTime, y= Preço), geom = "line") + geom_line(color = "red") + labs(x= "Time", y = "Preço")

Pelo fato do preço não ter sofrido alteração, uma reta foi utilizada para representar o comportamento do preço nos horários em que houve inspeção por parte do Robô.