Expand Short ‘URLs’
Tools are provided to expand vectors of short URLs into long ‘URLs’. No ‘API’ services are used, which may mean that this operates more slowly than ‘API’ services do (since they usually cache results of expansions that every user of the service requests). You can setup your own caching layer with the ‘memoise’ package if you wish to have a speedup during single sessions or add larger dependencies, such as ‘Redis’, to gain a longer-term performance boost at the expense of added complexity.
The following functions are implemented:
expand_urls
: Expand a vector of (short) URLs using
install.packages("longurl", repos = c("https://cinc.rud.is", "https://cloud.r-project.org/"))
# or
remotes::install_git("https://git.rud.is/hrbrmstr/longurl.git")
# or
remotes::install_git("https://git.sr.ht/~hrbrmstr/longurl")
# or
remotes::install_gitlab("hrbrmstr/longurl")
# or
remotes::install_github("hrbrmstr/longurl")
NOTE: To use the ‘remotes’ install options you will need to have the {remotes} package installed.
library(longurl)
library(magrittr)
# current version
packageVersion("longurl")
## [1] '0.3.3'
c(
"http://t.co/D4C7aWYIiA",
"1.usa.gov/1J6GNoW",
"ift.tt/1L2Llfr",
"bit.ly/1GPr5w5",
"http://l.dds.ec/1da152x",
"http://l.rud.is/seven",
"qrp://not a valid url/"
) -> test_urls
expand_urls(test_urls) %>%
dplyr::select(orig_url, status_code, expanded_url) %>%
knitr::kable()
orig_url | status_code | expanded_url |
---|---|---|
http://t.co/D4C7aWYIiA | 200 | https://www.wired.com/2015/06/airlines-security-hole-grounded-polish-planes/ |
1.usa.gov/1J6GNoW | 404 | https://1.usa.gov/1J6GNoW |
ift.tt/1L2Llfr | 200 | https://ifttt.com/applet_embeds/299814p/image?width=660&height=340 |
bit.ly/1GPr5w5 | 200 | https://s3.amazonaws.com/features.ifttt.com/blog_images/Channels/Weebly+final+banner+with+IFTTT+logo.png |
http://l.dds.ec/1da152x | 200 | http://l.dds.ec/1da152x |
http://l.rud.is/seven | 404 | http://l.rud.is/seven |
qrp://not a valid url/ | NA | NA |
Lang | # Files | (%) | LoC | (%) | Blank lines | (%) | # Lines | (%) |
---|---|---|---|---|---|---|---|---|
R | 4 | 0.8 | 110 | 0.84 | 20 | 0.54 | 51 | 0.65 |
Rmd | 1 | 0.2 | 21 | 0.16 | 17 | 0.46 | 27 | 0.35 |
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.