R语言获取股票信息进行数据分析

68 篇文章 0 订阅
2 篇文章 0 订阅

亿牛云代理
R语言是一种主要用于统计计算和图形的编程语言,被数据挖掘者、生物信息学家和统计学家用于数据分析和开发统计软件。R的一些优势是它的庞大的包生态系统,涵盖了广泛的统计技术和领域,它的可扩展性和开源性质,允许用户创建自己的工具和方法,以及它的无与伦比的图形和绘图能力,能够实现高质量的数据可视化。R也保持了机器学习研究的前沿,因为新方法往往一开始就有相应的R包。
R语言是网页抓取和数据分析的强大工具。使用R,可以编写爬虫从各种网站提取股票信息,如价格、数量、股息、收益等。然后,可以使用R的内置函数和包来执行各种数据分析任务,例如描述性的统计、可视化、回归、聚类、情绪分析等。R语言可以帮助投资者洞察股市并做出明智的决策。
下面用R语言写一个爬虫程序,采集http://guba.eastmoney.com/rank/获取股票信息,示例如下:

library(rvest)
library(httr)
library(dplyr)

# 亿牛云代理 
# 爬虫代理加强版 设置代理IP的用户名和密码
proxy_username <- "16YUN"
proxy_password <- "16IP"

# 创建用于发送HTTP请求的Session对象,并设置爬虫代理加强版代理IP的服务器和认证信息
session <- html_session(url = "http://guba.eastmoney.com/rank/",
                        proxy = "http://www.16yun.cn:31000",
                        authenticate(proxy_username, proxy_password))

# 定义函数来解析页面并提取股票信息
parse_page <- function(page) {
  page %>% 
    html_nodes("table.table_bg001 tbody tr") %>% 
    html_text() %>% 
    strsplit("\\s{2,}") %>% 
    lapply(function(x) {
      data_frame(
        rank = x[1],
        code = x[2],
        name = x[3],
        price = x[4]
      )
    }) %>% 
    bind_rows()
}

# 定义函数来获取指定页数的股票信息
get_stock_info <- function(page_num) {
  url <- modify_url("http://guba.eastmoney.com/rank/",
                    query = list(pn = page_num))
  
  page <- session %>% GET(url) %>% content() %>% read_html()
  
  stock_info <- parse_page(page)
  
  return(stock_info)
}

# 获取第一页的股票信息
stock_info <- get_stock_info(1)

# 获取总页数
total_pages <- stock_info %>% pull(rank) %>% as.numeric() %>% max()

# 循环获取剩余页面的股票信息
for (page_num in 2:total_pages) {
  stock_info_page <- get_stock_info(page_num)
  stock_info <- bind_rows(stock_info, stock_info_page)
}

# 打印整理后的股票信息
print(stock_info)

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值