作者psinqoo (零度空间)
看板R_Language
标题Re: [问题] 零基础的网页Parse?
时间Sat Jun 11 00:05:55 2016
之前看到想回,放假回一下,你参考 我是用这样子做法
我是用 Ubuntu 所以没 big5问题 (很讨厌微软,每次都是卡在转码,囧。)
我猜原网页是 用 utf8 所以在转码 出问题
library(XML)
library(httr)
library(rvest)
library(xml2)
x1 <-GET("
http://gweb.wra.gov.tw/ebooks/ebook/hyb2000/1140H058.htm")
x2<-html(x1)
tables<-html_nodes(x2,"table")
y1<-html_table(tables)
y1
#请自行挑想用的表格 y1<-html_table(tables[2])
sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 14.04.3 LTS
收工
-----
http://128.199.74.32:3838/
※ 引述《Edster (Edster)》之铭言:
: [问题类型]:
:
: 程式谘询(我想用R 做某件事情,但是我不知道要怎麽用R 写出来)
:
: [软体熟悉度]:
: 请把以下不需要的部份删除
: 使用者(已经有用R 做过不少作品)
: [问题叙述]:
: 请简略描述你所要做的事情,或是这个程式的目的
: 我想要将一个网站的表格撷取下来
: http://goo.gl/S5P7yO
: http://goo.gl/pyMNCe
: 过去我在R的经验都是读纯文字及或是空间资料.
: 盲试了两天,网路教学包含本版上面的文章都看了。
: 但是一来对html格式的不了解,读进来之後要一层层拆解搞得我有点难懂。
: 中间测试了package包括 XML, xml2, 还有版主C大前几天示范的httr + xml2
: 我只要抓365日的观测数值,中文字和下面的统计值都不用。
: 目前的进度如范例,研究了一天半不知如何把这堆格式代码去除。
: 请问可否给点提示。
: [程式范例]:
:
: ## method1
: f = "http://goo.gl/S5P7y"
: a = htmlParse(f, encoding = "big5")
: b = getNodeSet(a, path="//body/div")
: c = getNodeSet(b[[2]], path="//tr")
: d = c[[5]]
: ## method2
: tableContent <-
: GET(f) %>>% content("text", encoding = "BIG5") %>% read_html("BIG5")
: tableContent %<>% xml_find_all("//body/div/div")
: xml_structure(tableContent[[2]])
: tableContent <- tableContent[[2]] %>% xml_find_all(., "//tr") %>% xml_text(.)
: tableContent[[5]]
: [环境叙述]:
:
: R: 3.3.0
: Rstudio: 0.99.902
: OS: Win 10
:
: [关键字]:
:
: XML, xml2, httr.
:
--
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.83.0.245
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1465574759.A.33B.html
※ 编辑: psinqoo (111.83.0.245), 06/11/2016 00:06:37
1F:→ celestialgod: rvest 还没研究过Orz 06/11 00:53