[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
我想要抓台湾每次地震,固定地点的震度
[软件熟悉度]:
新手(没写过程式,R 是我的第一次)
[问题叙述]:
以台湾时间09-11 05:24的地震为例,它的网址是:
https://scweb.cwb.gov.tw/zh-tw/earthquake/details/2019091105245636
以此网址为例,我可以撷取固定地点,例如 玉山 的资料
但是地震发生很多次,每次的网址都不一样,不可能每次都手动抓网址,
再用R抓到玉山的震度。
我在地震资料的网址中,可以从原始码中看到每个地震的连结,
https://scweb.cwb.gov.tw/zh-tw/earthquake/data/
因此,如果有办法可以从这里撷取到每次地震的网址,
应该就可以完成我的需求,但是这个网址的部分,不知道该如何撷取,
在请版上的各位先进帮忙,谢谢。
[程式范例]:
在https://scweb.cwb.gov.tw/zh-tw/earthquake/details/2019091105245636之下
利用以下程式,可以看到玉山的震度:
data <-
read_html("https://scweb.cwb.gov.tw/zh-tw/earthquake/details/2019091105245636")
ths <- xml_find_all(data, "//div/ul/li")
xml_text(ths)[substring(xml_text(ths),1,2) == "玉山"]
[1] "玉山 1"
但在https://scweb.cwb.gov.tw/zh-tw/earthquake/data/之下,
我想要用一样的方式,至少先撷取出网址的位置,结果什么都没有...
程式如下:
data <-
read_html("https://scweb.cwb.gov.tw/zh-tw/earthquake/data/")
ths <- xml_find_all(data, "//div/table/tbody/tr/td/a")
xml_text(ths)
character(0)
[环境叙述]:
请提供 sessionInfo() 的输出结果,
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)
Matrix products: default
locale:
[1] LC_COLLATE=Chinese (Traditional)_Taiwan.950 LC_CTYPE=Chinese
(Traditional)_Taiwan.950 LC_MONETARY=Chinese (Traditional)_Taiwan.950
LC_NUMERIC=C
[5] LC_TIME=Chinese (Traditional)_Taiwan.950
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] xml2_1.2.2 curl_3.3 swirl_101.5.9
loaded via a namespace (and not attached):
[1] Rcpp_1.0.2 pvm_0.4.2.4 later_0.8.0 digest_0.6.20
bitops_1.0-6 R6_2.4.0 jsonlite_1.6 magrittr_1.5 httr_1.4.0
rlang_0.4.0 stringi_1.4.3
[12] promises_1.0.1 testthat_2.1.1 tools_3.6.1 stringr_1.4.0
RCurl_1.95-4.12 httpuv_1.5.1 yaml_2.2.0 compiler_3.6.1
[关键字]:
中央气象局 地震