-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathamazon_name_checker.R
More file actions
58 lines (33 loc) · 1.09 KB
/
Copy pathamazon_name_checker.R
File metadata and controls
58 lines (33 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
library(tidyverse)
library(tibble)
library(openxlsx)
library(gdata)
library(lubridate)
library(rvest)
library(stringr)
library(dplyr)
library(purrr)
library(plyr)
name_checker <- function(asin){
url_compositor <- paste0("https://www.amazon.it/dp/", asin)
page <- read_html(url_compositor)
name <- page %>%
html_nodes(xpath= "//*[@id='productTitle']/text()") %>%
html_text()
name <- trimws(name)
table <- page %>% html_table()
data <- table[[3]]
asin <- unlist(data[data$X1 == "ASIN", 2])
asin_2 <- asin
#real_name <- unlist(data[2,2])
sku <- unlist(data[data$X1 == "Numero modello articolo", 2])
correct_name <- ifelse(trimws(tolower(real_name)) == trimws(tolower(name)),"GOOD", "FIX")
final <- cbind(asin,asin_2,name,real_name,correct_name,sku)
final_df <<- as.data.frame(final)
return(final_df)
print("DONE")
}
asin <- c("B08X6QMR36", "B09SDHHKJZ","B0BCPB5TYQ")
name_raw <- purrr::map(asin, purrr::possibly(name_checker, NA))
name_df <- plyr::ldply(name_raw, data.frame)
write.csv(name_df, file = "data/Amazon Name.csv")