Advertisement
Guest User

Untitled

a guest
Jul 1st, 2019
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 2.64 KB | None | 0 0
  1. install.packages("httr")
  2. install.packages("jsonlite")
  3.  
  4. #Этот пакет позволяет запрашивать данные из любого API проще,
  5. #форматируя ваши запросы GET с соответствующими заголовками и аутентификацией
  6. require("httr")
  7.  
  8. #Когда данные возвращаются из многих API, он будет в формате JSON. Этот пакет форматирует в нужный нам формат
  9. require("jsonlite")
  10.  
  11. username <- "######################.com"
  12. password <- "############"
  13.  
  14. base <- "https://###############.amocrm.ru/api/v2/leads?"
  15.  
  16. course_amo <- "fabrics"
  17. date_from_amo <- "1536936540"
  18. date_to_amo <- "1539960540"
  19.  
  20. call1 <- paste(base,"query","=", course_amo, "&filter%5Bdate_create%5D%5Bfrom%5D","=", date_from_amo, "&filter%5Bdate_create%5D%5Bto%5D","=", date_to_amo, sep="")
  21.  
  22. get_prices <- GET(call1, authenticate(username,password, type = "basic"))
  23.  
  24. get_prices_text <- content (get_prices, "text")
  25.  
  26. get_prices_json <- fromJSON(get_prices_text, flatten = TRUE)
  27.  
  28. get_prices_df <- as.data.frame(get_prices_json)
  29.  
  30. #https://#############.amocrm.ru/api/v2/leads?query=tests - query поисковая строка, lead - раздел поиска
  31. # подробнее на https://www.amocrm.ru/developers/content/api/leads /// URL МЕТОДА ВАЖНО МЕНЯТЬ ПРЕЖДЕ ЧЕМ ОБРАЩАТЬСЯ!!!
  32.  
  33. #Фильтр по дате (для времени используется timestamp)
  34. #https://#################.amocrm.ru/api/v2/leads?query=sketching108&filter%5Bdate_create%5D%5Bfrom%5D=1538424180&filter%5Bdate_create%5D%5Bto%5D=1539201780
  35.  
  36. #Консоль разработчика amocrm
  37. #https://www.amocrm.ru/developers/console/#
  38.  
  39. fifteenth_column_of_course_amo <- get_prices_df$X_embedded.items.custom_fields
  40.  
  41. #fifteenth_column_of_course_amo[[1]][["values"]][[4]]
  42.  
  43. id_course_amo <- data.frame("id_course_amo"= fifteenth_column_of_course_amo[[1]][["values"]][[4]])
  44.  
  45. for (i in 1:nrow(get_prices_df)) {
  46.   print(id_course_amo[i,] <- fifteenth_column_of_course_amo[[i]][["values"]][[4]])
  47. }
  48.  
  49. #ОЧЕНЬ ВАЖНО. Чтобы он находил все заявки за период, надо ставить
  50. #date_from_amo tamestamp - со временем 00 01 00
  51. #date_to_amo - 23 59 00
  52.  
  53. d <- ifelse (id_course_amo[1]=="fabrics", "fabrics", NA)
  54.  
  55. #Создает data.frame, переводит NA в False и в конце which записывает все кроме false
  56. v <- data.frame(which(complete.cases(d)))
  57.  
  58. itog1 <- nrow(v)
  59.  
  60. all <- c(itog1,itog2)
  61.  
  62. write.csv(all, "pr2.csv")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement