Tuesday, December 2, 2014

分享一个查opt状态的R程序

发信人: kirklanda (kirkland), 信区: Statistics
标  题: 分享一个查opt状态的R程序
发信站: BBS 未名空间站 (Wed Jun  4 01:30:14 2014, 美东)

最近申请OPT,一直在USCIS网页查状态,同时关注周围的号的动态,但是一个个输入,
比较麻烦。幸好有R可以帮助查询,regular expression学的不好,不过似乎能work,
可以批量查询状态

library(RCurl)

getstatus <- function(num) {
    numc <- paste0("EAC", num)
    text <- postForm("https://egov.uscis.gov/cris/Dashboard/CaseStatus.do",
appReceiptNum=numc)
    text <- readLines(textConnection(text))
    linenum <- which(text=="        <h4>" )+1
    statusline <- text[linenum]
    pos <- regexpr("[[:alpha:]]", statusline)[1]
    status <- substr(statusline, pos, nchar(statusline))
    appline <- text[which(grepl("Your Current Case Status for Form", text))]
    appline1 <- strsplit(appline, ",")[[1]][1]
    appline2 <- substr(appline1, 41, nchar(appline1))
    c(numc, appline2, status)
}

getstatuses <- function(num, back = 10) {
    nums <- (num-back+1):num
    result <- do.call("rbind", lapply(nums, getstatus))
    result <- as.data.frame(result)
    names(result) <- c("Receipt#", "Appliction", "Status")
    result
}


getstatuses(1490179780, 20)
--
※ 来源:·WWW 未名空间站 网址:mitbbs.com 移动:在应用商店搜索未名空间·[FROM: 128.]

http://www.mitbbs.com/article_t/Recommend/31447811.html

No comments:

Post a Comment