人工智能路上,怎么能少了它!

640?wx_fmt=gif


目前,人工智能的应用日渐广泛。


而作为人工智能核心的机器学习,是一门多领域的交叉学科,专门研究计算机模拟或实现人类学习行为的方法,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。


简单来说,机器学习就是优化数学方程式的过程。但在实际生活中,机器学习已经在金融、科研等领域蓬勃发展。

640?wx_fmt=png举个例子,运用爬虫技术来获取东方财富网的股票信息


首先,明确需要获取的信息:

总市值、净资产、净利润、市盈率、市净率、毛利率、净利率 ROE


根据目标,准备以下材料:

东方财富网址:http://quote.eastmoney.com/stocklist.html

环境:python2.7/python3.6

需要安装:BeautifulSoup包、requests包、lxml包


进入我们事先准备的东方财富网站,先爬取股票汇总页面,如下图所示:

640?wx_fmt=png

(直看得眼花缭乱)


接着进入每只股票的详情页,爬取每只股票的具体信息,以下图两家为例:


640?wx_fmt=png


那我们是如何获取到想要的数据的呢?


来瞧瞧撬动这个冰山一角的代码:

#coding=utf-8

import requests,re,json,time,os

import heapq

 

from bs4 import BeautifulSoup

 

class GPINFO(object):

    """docstring for GPINFO"""

    def __init__(self):

        self.Url = 'http://quote.eastmoney.com/stocklist.html'

        self.BaseData = []

        self.Date = time.strftime('%Y%m%d')

        self.Record = 'basedata'+self.Date

        if os.path.exists(self.Record):

            print ('record exist...')

            self.BaseData = self.get_base_data_from_record()

        else:

            print ('fuck-get data again...')

            self.get_data()

 

    #将数据写入到记录文件

    def write_record(self,text):

        with open(self.Record,'ab') as f:

            f.write((text+'\n').encode('utf-8'))

 

    #从记录文件从读取数据

    def get_base_data_from_record(self):

        ll = []

        with open(self.Record,'rb') as f:

            json_l = f.readlines()

            for j in json_l:

                ll.append(json.loads(j.decode('utf-8')))

        return ll

 

    #爬虫获取数据

    def get_data(self):

        #请求数据

        orihtml = requests.get(self.Url).content

        #创建 beautifulsoup 对象

        soup = BeautifulSoup(orihtml,'lxml')

        #采集每一个股票的信息

        count = 0

        for a in soup.find('div',class_='quotebody').find_all('a',{'target':'_blank'}):

            record_d = {}

            #代号

            num = a.get_text().split('(')[1].strip(')'#获取股票代号

            if not (num.startswith('00') or num.startswith('60')):continue #只需要6*/0*    只要以00或60开头的股票代号

            record_d['num']=num

            #名称

            name = a.get_text().split('(')[0#获取股票名称

            record_d['name']=name

            #详情页

            detail_url = a['href']

            record_d['detail_url']=detail_url

 

            cwzburl = detail_url

            #发送请求

            try:

                cwzbhtml = requests.get(cwzburl,timeout=30).content  #爬取股票详情页

            except Exception as e:

                print ('perhaps timeout:',e)

                continue

            #创建soup对象

            cwzbsoup = BeautifulSoup(cwzbhtml,'lxml')

 

            #财务指标列表 [浦发银行,总市值    净资产    净利润    市盈率    市净率    毛利率    净利率    ROE] roe:净资产收益率

            try:

                cwzb_list = cwzbsoup.find('div',class_='cwzb').tbody.tr.get_text().split()  #获取class为cwzb的div下第一个tbody下第一个tr获取内部文本,并使用空格分割

            except Exception as e:

                print ('error:',e)

                continue

            #去除退市股票

            if '-' not in cwzb_list:

                record_d['data']=cwzb_list   #将数据加入到字典中

                self.BaseData.append(record_d)  #将字典加入到总数据总

                self.write_record(json.dumps(record_d))  #将字典类型转化为字符串,写入文本

                count=count+1

                print (len(self.BaseData))

 

def main():

    test = GPINFO()

    result = test.BaseData

    #[浦发银行,总市值    净资产    净利润    市盈率    市净率    毛利率    净利率    ROE] roe:净资产收益率]

    top_10 = heapq.nlargest(10,result,key=lambda r:float(r['data'][7].strip('%')))   #获取前10名利率最高者的数据

    for item in top_10:

        for key in item['data']:

            print(key),

        print('\n')

#打印字符串时,使用print str.encode('utf8');

#打印中文列表时,使用循环 for key in list:print key

 

#打印中文字典时,可以使用循环,也可以使用json:

#  import json

# print json.dumps(dict, encoding='UTF-8', ensure_ascii=False)

 

if __name__ == '__main__':

    main()


除此之外,机器学习还可以

通过文字信息进行文本分析;

搭建回测系统;

开发交易平台等等。


既然机器学习如此牛逼,那如何追赶这股技术潮流呢?


现超级数学建模携手唐老师以Python为基础,为大家精心准备《Python机器学习》系列课程。


唐老师将系统讲解Python的基础知识常用的工具包和算法以及四个主流的Python库,并借助真实案例带领大家进行项目实战,全程还会附送完整的代码进行课程教学与实战演练。


相信,每天都能感受到能力的提升!


《Python机器学习》系列课程介绍


基础篇(共131学时)

(课程大纲)

《Python机器学习实战课程》(¥398)

第一章 AI时代人工智能入学指南(免费试学)

第二章 Python快速入门(免费试学)

第三章 Python工具:科学计算库Numpy

第四章 Python工具:数据分析处理库Pandas

第五章 Python工具:可视化库Matplotlib

第六章 算法:线性回归算法

第七章 算法:梯度下降原理

第八章 算法:逻辑回归算法

第九章 案例:Python实现逻辑回归与梯度下降

第十章 案例:使用Python分析科比生涯数据

第十一章 案例:信用卡欺诈检测

第十二章 算法:决策树

第十三章 决策树Sklearn实例

第十四章 算法:随机森林与集成算法

第十五章 案例:Kaggle竞赛案例:泰坦尼克获救预测

第十六章 算法:线性支持向量机

第十七章 非线性支持向量机

第十八章 支持向量调参实战

第十九章 计算机视觉挑战

第二十章 神经网络必备基础知识点

第二十一章 最优化与反向传播

第二十二章 神经网络整体架构    

第二十三章 案例实战CIFAR图像分类任务 

第二十四章 Tensorflow框架    

第二十五章 Mnist手写字体识别    

第二十六章 PCA降维操作与SVD矩阵分解    

第二十七章 聚类与集成算法  

第二十八章 机器学习业务流程   

长按识别二维码

即可报名学习

640?wx_fmt=png


进阶篇(共113学时)

(课程大纲)


《Python机器学习实战——进阶课程》(¥398)

第一章:Seaborn可视化库(免费试学)

第二章:降维算法-线性判别分析

第三章:Python实现线性判别分析

第四章:PCA主成分分析

第五章:Python实现PCA主成分分析

第六章:EM算法

第七章:GMM聚类实践

第八章:Xboost算法

第九章:推荐系统

第十章:推荐系统实践

第十一章:贝叶斯算法

第十二章:Python文本数据分析

第十三章:KMEANS聚类

第十四章:DBSCAN聚类

第十五章:聚类实践

第十六章:时间序列ARIMA模型

第十七章: 时间序列预测任务

第十八章:语言模型

第十九章:自然语言处理word2vec

第二十章:使用word2vec进行分类任务

第二十一章:Gensim中文词向量建模

第二十二章:自然语言处理-递归神经网络

第二十三章:递归神经网络实战-情感分析

第二十四章:探索性数据分析-赛事数据集分析

第二十五章:探索性数据分析-农粮数据分析

长按识别二维码

即可报名学习

640?wx_fmt=png


拓展篇(共88学时)

(课程大纲)


《Python数据科学必备四大主流库》(¥198)

第一章:Python基础(免费试学)

第二章:科学计算库Numpy

第三章:数据分析处理库Pandas

第四章:可视化库Matplotlib

第五章:Seaborn可视化库


长按识别二维码

即可报名学习

640?wx_fmt=png

课程特色

  • 学习平台——腾讯课堂

  • 上课形式——录播(可反复观看)

  • 学习周期——两个月(学习建议:2小时/周)

  • 答疑方式——课程配有专属学习群,老师随时解答

  • 课程资料——配有专属课件代码与实战案例

  • 课程收益——快速掌握机器学习的基础知识;掌握机器学习的四大主流库;独立完成项目实战

适用群体

  • 零基础使用者

  • 机器学习、深度学习爱好者

  • 科研工作者,特别是打算迈入人工智能领域的工作者

授课老师

作为主讲人,唐老师将把多年的机器学习经验和Python使用技巧分享给大家。因此课程传授的不仅是知识,还有思维和方法


640?wx_fmt=png


特别提醒

基础篇

  • 课程价格——¥398

  • 课程优惠

新学员

限量发放50元优惠券,公众号后台对话框回复机器学习领取

老学员(报名过我们任一付费课程的学员)

评价已报名的课程,并截图发给助教,即可领取55元优惠券


进阶篇

  • 课程价格——¥398

  • 课程优惠

新学员

限量发放50元优惠券,公众号后台对话框回复实战进阶领取

老学员(报名过我们任一付费课程的学员)

评价已报名的课程,并截图发给助教,即可领取55元优惠券


拓展篇

  • 课程价格——¥198

  • 课程优惠

本课程暂无优惠


注意事项

Python交流群:114109947

课程有疑问成功报名均请联系助教

640?wx_fmt=jpeg

小七微信:zwjlee001

大鱼QQ:210187565

案例来源:

https://blog.csdn.net/luanpeng825485697/article/details/78425612

作者:栾鹏

本文由数据与算法之美整理

案例版权归原作者所有,如有侵权请留言联系删除,感谢合作。

640?来吧,点击下方“阅读原文”,跟随着老师的脚步,提升自我!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/303111.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

墙裂推荐:这可能是CAP理论的最好解释

> 英文蓝本:http://ksat.me/a-plain-english-introduction-to-cap-theorem 经过小码甲意译、原创配图, 建议收藏。你可能经常听到CAP定理, 这个定理描述了在设计分布式系统时的天然约束。就像其他文章一样, 本文以现实场景对比理解CAP定理…

台湾 计算机术语,快取,陣列,程式,这些台湾的计算机术语,你知道几个?|冷知识...

原标题:快取,陣列,程式,这些台湾的计算机术语,你知道几个?|冷知识作者 | 楼下小黑哥来源 | 程序通事今天就不写技术文了,写点轻松的,带大家涨点知识。最近闲来无聊的时候&#xff0c…

计算机原理试题b,计算机组成原理试题B答案

计算机组成原理试题B答案 (3页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!9.9 积分计算机组成原理试题B答案一、 选择题1. D 2. A 3. A,C 4. B 5. B 6. B 7. B 8. B 9. A 10. D二、 填…

趣图:各种程序员的键盘热力图

图0:不保存不舒服斯基型图1:复制粘贴型 图2:复制粘贴型专用键盘图3:Vim 党新手(内心OS:门在哪里,我要退出)图4:Windows 程序员图5:01 党终极程序员 来源&am…

创建支持依赖注入、Serilog 日志和 AppSettings 的 .NET 5 控制台应用

翻译自 Mohamad Lawand 2021年3月24日的文章 《.NET 5 Console App with Dependency Injection, Serilog Logging, and AppSettings》 [1]在本文中,我们将构建一个 .NET 5 控制台应用程序,该应用程序支持依赖注入、日志记录和 appsettings 配置。你也可以…

作为一个前端,可以如何机智地弄坏一台电脑?

有人说,前端的界限就在浏览器那儿。无论你触发了多少bug,最多导致浏览器崩溃,对系统影响不到哪去。这就像二次元各种炫酷的毁灭世界,都不会导致三次元的世界末日。然而,作为一个前端,我发现是有方式打开次元…

IComparer实现文件名排序

↑↑↑ 点击左上角蓝字关注我,为您提供技术新动态。一、概要本文主要分享在文件对象处理中需要根据文件名排序思路。主要基于.net框架内提供的IComparer对象,它主要将定义类型为比较两个对象而实现的方法。二、详细内容1.场景在读取文件列表的时候&#…

WebService基于SoapHeader实现安全认证[webservice][.net][安全][soapheader]

WebService基于SoapHeader实现安全认证 本文仅提供通过设置SoapHeader来控制非法用户对WebService的调用,如果是WebService建议使用WSE3.0来保护Web服务,如果使用的是Viaual Studio 2008可以使用WCF,WCF里面提供了更多的服务认证方法。以下提…

Java 常见的 30 个误区与细节!

1 在Java中,没有goto语句。因为大量使用goto语句会降低程序的可读性和可维护性,所以Java语言取消了goto的使用。同时,为了避免程序员自行使用goto所带来的混乱,Java语言仍将goto定义为一个关键字,但是没有定义任何语…

信息技术上册教案了解计算机,信息技术上册全册教案

信息技术上册全册教案[课时]:1节课[教学内容]:认识媒体;认识多媒体[教学目标]:1、了解媒体的概念和分类,理解多媒体的内涵和特征。2、能从日常的生活和学习中感受各种媒体及其作用3、培养学生对媒体、多媒体的喜爱,引发他们继续学习的热情。[教学重、难点…

轻量级NuGet—BaGet

1. 介绍BaGet是一个轻量级的包管理服务。有些时候公司或者个人不希望某一些包进行公开,那么就需要使用私有的包管理服务程序,该服务是用.netcore进行编写的(感谢开发者为.NET社区做出的贡献)Github:https://github.com/loic-sharma/BaGet官网…

为什么这个SQL Server DBA学习PowerShell--SQL任务

我开始学习PowerShell,是因为我在寻找一种快速和高效的方式收集有关我的SQL Servers的信息和更好地管理我的服务器工作负载的方式。我以为,我正在学习是另一门新的脚本语言,它能帮我做到前面提到的设想。实际上,我发现学习 PowerS…

30张地图看懂世界格局,用大数据说话

摘要:世界那么大,要了解的数据那么复杂,下面知识探索小编帮您总结一下关于世界的数据。1、 世界人口聚居地红色越深人口密度越大;灰色代表无人地带。2、全球各国平均智商分布图颜色越浅智商越高3、全球冰川融化后的世界地图4、全世…

.NET Core3.1 Dotnetty实战教程

Dotnetty实战系列视频由于在.net的环境当中对dotnetty相关资料相对较少,所以这里主要分享一个dotnetty使用教程希望能帮助到正在使用这套框架的开发者们。虽然这套框架已微软官方已经不在维护,但是这套框架里的设计是相当不错的通过阅读源码能学习到很多…

计算机u打字,win7电脑打字打不出来怎么办

在windows电脑当中,必不可少的一个操作就是打字了,输入代码需要打字,网页中搜索也需要打字,网络聊天也需要打字,不过最近有位win7系统用户,在电脑中打开浏览器,输入想要找的资料的时候&#xff…

我用Python爬取了14年所有的福彩3D信息,彩民们,只能帮你们到这了

作者|丁彦军来源|恋习Python前两天,在网上看到一个有意思的问题:彩票预测靠谱么?为什么还有那么多的人相信彩票预测?暂且不说,彩票预测是否靠谱?彩票预测也分人而异,江湖上骗术很多,…

C#: 8.0 和 9.0 常用新特性

在《带你了解C#每个版本新特性》 一文中介绍了,C# 1.0 到 7.0 的不同特性,本文接着介绍在 8.0 和 9.0 中的一些常用新特性。C# 8.0在 dotNET Core 3.1 及以上版本中就可以使用 C# 8 的语法,下面是 C# 8 中我认为比较常用的一些新功能。默认接…

选股公式 成功率测试 软件,通达信股票软件选股公式,99%的成功率,你还等什么?...

工具:通达信金融终端使用方法:1、通达信软件界面2、点击“功能”“公式系统”“公式管理器”“条件选股公式”“其他类型”,点击新建3、使用选股公式,点击ctrlt,弹出条件选股窗口4、选中公式,点击加入条件&…

小米 华为都要造车?.NET高薪潮来了!(附招聘链接)

近期网络沸沸扬扬的小米、华为、苹果 都要造车,其实百度、阿里和腾讯 也都入局了。互联网大佬们纷纷开始造车,跟我们小小程序员有关系吗?有!高薪机会来了,尤其是WPF!且听下文分解。物联网终极形态“互联网”…

聚类算法学习指南(二)

http://hi.baidu.com/catfool/blog/item/c06bec3931a0efcad4622524.html 聚类算法学习指南(二)2009-05-06 20:49下图图 3-1 聚类方法的分类示意图3.1 传统聚类算法3.1.1 层次方法层次法对给定的数据对象集合进行层次似的分解。按层次分解的形成方式&…