वहाँ आर में TinyURL लिंक डिकोड करने के लिए इतना है कि मैं देख सकता हूँ जो वेब पृष्ठों वे वास्तव में उल्लेख करने के लिए एक तरीका है?आर में डीकोड tinyurl?
13
A
उत्तर
16
नीचे एक त्वरित और गंदी समाधान है, लेकिन काम करवाने चाहिए:
library(RCurl)
decode.short.url <- function(u) {
x <- try(getURL(u, header = TRUE, nobody = TRUE, followlocation = FALSE))
if(class(x) == 'try-error') {
return(u)
} else {
x <- strsplit(x, "Location: ")[[1]][2]
return(strsplit(x, "\r")[[1]][1])
}
}
चर 'यू' नीचे एक shortend यूआरएल, और एक नियमित रूप से url होता है।
u <- c("http://tinyurl.com/adcd", "http://www.google.com")
फिर आप निम्न कार्य करके विस्तारित परिणाम प्राप्त कर सकते हैं।
sapply(u, decode.short.url)
उपर्युक्त सेवाओं को उन सेवाओं के लिए काम करना चाहिए जो यूआरएल को छोटा करते हैं, सिर्फ tinyURL नहीं। मुझे लगता है।
HTH
टोनी Breyal
1
मैं आर पता नहीं है, लेकिन सामान्य रूप में आप tinyurl-यूआरएल के लिए एक http अनुरोध बनाने की जरूरत है। आपको वास्तविक यूआरएल के साथ 301 प्रतिक्रिया वापस लेनी चाहिए।
0
library(RCurl)
decode.short.url <- function(u) {
x <- try(getURL(u, header = TRUE, nobody = TRUE, followlocation = FALSE))
if(class(x) == 'try-error') {
return(u)
} else {
x <- strsplit(x, "Location: ")[[1]][2]
return(strsplit(x, "\r")[[1]][1])
}
}
(u <- c("http://tinyurl.com/adcd", "http://tinyurl.com/fnqsh"))
(sapply(u, decode.short.url))
1
मैं टोनी Breyal के कोड का इस्तेमाल किया है, लेकिन समारोह उन URL जहां कोई URL रीडायरेक्शन था के लिए NA
मूल्यों लौट आए। टोनी सूचीबद्ध हालांकि अपने उदाहरण में "google.com", मैं गूगल google.com के स्थानीय संस्करण के कुछ प्रकार के किसी भी मामले में आप पुनर्निर्देश लगता है।
decode.short.url <- function(u) {
x <- try(getURL(u, header = TRUE, nobody = TRUE, followlocation = FALSE))
if(class(x) == 'try-error') {
print(paste("***", u, "--> ERORR!!!!"))
return(u)
} else {
x <- strsplit(x, "Location: ")[[1]][2]
x.2 <- strsplit(x, "\r")[[1]][1]
if (is.na(x.2)){
print(paste("***", u, "--> No change."))
return(u)
}else{
print(paste("***", x.2, "--> resolved in -->", x.2))
return(x.2)
}
}
}
u <- list("http://www.amazon.com", "http://tinyurl.com/adcd")
urls <- sapply(u, decode.short.url)
संबंधित मुद्दे
- 1. TinyURL
- 2. पायथन: उन TinyURL (bit.ly, tinyurl, ow.ly) को पूर्ण URLS
- 3. PHP में जेसन डीकोड
- 4. अपनी खुद की Tinyurl शैली बनाना uid
- 5. जावास्क्रिप्ट में JSON एन्कोड/डीकोड बेस 64 एन्कोड/डीकोड
- 6. पर्ल: utf8 :: डीकोड बनाम एनकोड :: डीकोड
- 7. डीकोड HttpUtility.UrlDecode
- 8. डीकोड यूआरएल
- 9. एंड्रॉइड में डीकोड शिफ्ट-जेस
- 10. जावा में जेएसओएन डेटा डीकोड
- 11. मामला बनाम डीकोड करने
- 12. एसक्यूएल डीकोड नल वैल्यू
- 13. क्या bit.ly या tinyurl URL पर कोई समाप्ति है?
- 14. TinyURL एएसपी.नेट एमवीसी के साथ रूटिंग की तरह?
- 15. पृष्ठभूमि धागे में छवियों को डीकोड करें?
- 16. यूआरएल में "\ u0026" डीकोड कैसे करें?
- 17. रेल में साधारण जेएसओएन डीकोड त्रुटि स्ट्रिंग
- 18. पायथन (2.6) में JSON को डीकोड करने के लिए और यूनिकोड को कैसे डीकोड करें?
- 19. में आर
- 20. पावरशेल - गेट-क्रेडेंशियल डीकोड पासवर्ड?
- 21. एनकोड और डीकोड rfc2396 यूआरएल
- 22. जैक्स-आरएस स्वचालित डीकोड पथपरम
- 23. डीकोड और # 55357; वास्तविक चरित्र
- 24. इनपुट स्ट्रीम को डीकोड करना
- 25. एक वेबसाइकिल फ्रेम डीकोड करें
- 26. आर: आर
- 27. रिशेर्पर (आर #) में आंतरिक
- 28. कैसे आर में
- 29. जावा में इंटरफेसिंग आर
- 30. आर प्लॉट्स में किंवदंतियों
टोनी, आप दो खाते हैं:
यहाँ कैसे मैं उस से निपटने के लिए टोनी कोड को संशोधित किया है? –
@ जेडी-लांग हां, लेकिन मुझे नहीं पता कि दो खातों को कैसे गठबंधन करना है। शीर्ष पर एक ओपनआईडी का उपयोग करता है। मैं भी नीचे स्थित एक (खतरा माउस पिक के साथ) में लॉग इन करने के लिए कैसे याद नहीं कर सकते। मैं stackoverflow पर पोस्ट करने के लिए नया हूँ। –