我是靠谱客的博主 激昂眼神,最近开发中收集的这篇文章主要介绍R语言rcurl抓取问财财经搜索网页股票数据,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 问财财经搜索是同花顺旗下的服务之一,主要针对上市公司的公告、研报、即时新闻等提供搜索及参考资料。相对于其他股票软件来说,一个强大之处在于用自然语言就可以按你指定的条件进行筛选。而大部分现有的行情软件支持的都不是很好,写起来就费尽心思,还不一定能行。

然而问财有一个缺陷在于它只能获取一天的股票相关信息。如果,我们希望实现抓取一段时间的股票历史信息,就要通过网页批量抓取。我们围绕爬虫技术进行一些咨询,帮助客户解决独特的业务问题。

事实上,我们可以通过制作一个爬虫软件来自己定义时间日期和搜索的关键词,并且批量下载一定日期范围的数据。

我们以抓取每天的收盘价大于均线上股票数目为例子,用r来实现抓取:

例如需要获取10月12日的数据,在问财里输入下面的关键词即可

查看搜索结果链接,我们可以看到关键词在链接中的显示规则

因此,我们在r中可以通过制作一个时间段的伪链接来向服务器不断发送搜索请求,从而实现一段日期数据的批量抓取

url=paste("http://www.iwencai.com/stockpick/search?typed=1&preParams=&ts=1&f=1&qs=result_rewrite&selfsectsn=&querytype=&searchfilter=&tid=stockpick&w=",as.character(as.Date(i, origin = "1970-01-01")) ,input2)

然后,我们查看其中一天的网页源代码,可以找到对应股票数据的xml源码

因此,可以通过编写一个html_value 函数来获取这个xmlValue

xpath <- '//div[@class="natl_words long_words"]/span[@class="natl_num"]'

html_value <- function(url,xpath){

webpage <- getURL(url)

webpage <- readLines(tc <- textConnection(webpage)); close(tc)

pagetree <- htmlTreeParse(webpage, error=function(...){}, useInternalNodes = TRUE)

value <- getNodeSet(pagetree,xpath)
##i <- length(value)##统计满足条件的值个数,一般情况为1

# value1 <- xmlValue(value[[ 1]])

# value2 <- xmlValue(value[[ 2]])

# value3 <- xmlValue(value[[ 3]])

# value4 <- xmlValue(value[[ 4]])

value1=character(0)

for(i in 1:length(value))value1[i] <- xmlValue(value[[ i]])

return(value1)

}

然后封装成一个函数,就可以任意下载一段时间内几个关键词所对应的股票数据了。

最后可以将爬取到的数据批量输出到一个excel文件中,从而方便后续的分析。

最后

以上就是激昂眼神为你收集整理的R语言rcurl抓取问财财经搜索网页股票数据的全部内容,希望文章能够帮你解决R语言rcurl抓取问财财经搜索网页股票数据所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(89)

评论列表共有 0 条评论

立即
投稿
返回
顶部