dddddddddddddd
import requests # 导入requests包
from bs4 import BeautifulSoup
from urllib import request
import re
import pymongomongo_client = pymongo.MongoClient('mongodb://localhost:27017/')
# 若没有Database 和Collection,则会自动创建
mongo_db = mongo_client['quant_01']
mongo_collection = mongo_db['EPS_Stock']
'''
Company name:', 'Net assets per share:', 'Earnings per share:', 'Net profit:', 'Net profit growth rate:',
'Net profit growth rate:', 'Operating income:', ' Total share capital: ', 'tradable shares:
'''headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.25 Safari/537.36 Core/1.70.3877.400 QQBrowser/10.8.4507.400'
}all_list = []
for i in range(3):# 同花顺下载数据Furl = 'http://stockpage.10jqka.com.cn/'allrul = ['600511', '600512', '600513', '600515']url = Furl + allrul[i]print(url)req = request.Request(url=url, headers=headers)rsp = request.urlopen(req)# print(rsp.read().decode('utf-8'))html = rsp.read().decode('utf-8')bf = BeautifulSoup(html, "html.parser")texts = bf.find_all('dl', class_='company_details')str_Result = str(texts)# print(str_Result)splitR = str_Result.splitlines()print(splitR)print(len(splitR))# "<dd.+?/dd>|<dt.+?/dt>" "<dd.+?/dd>|<dt.+?/dt>"gm# print('+++++++++++++++++++++++++++++++++++++++++++')result = re.findall(r"<dd.+?/dd>|<dt.+?/dt>", str_Result, flags=0)# print(result)# print(len(result))num_list1 = []num_list2 = []for i in range(len(result)):if result[i].find('公司名称') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('上市时间') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('每股净资产') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('每股收益') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('净利润') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('净利润增长率') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('营业收入') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('总股本') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passif result[i].find('流通股') > -1:num_list1.append(result[i])num_list2.append(result[i + 1])else:passprint('$$$$$$$$$$$$$$$$$$$$$$$$$')# print(num_list1)# print(len(num_list1))# Important_Books1 = []# for m in num_list1:# Important_Books1.append(m[4:-5])## print(Important_Books1)# print(num_list2)# print(len(num_list2))# ['公司名称:', '每股净资产:', '每股收益:', '净利润:', '净利润增长率:', '净利润增长率:',# '营业收入:', '总股本:', '流通股:']Important_Books1 = ['Company_Name', 'Net_assets_per_share', 'EPS', 'Net_Profit', 'Net_Profit_Ratio', 'operating_revenue','total_share_capital', 'outstanding_shares']Important_Books2 = []for m in num_list2:Important_Books2.append(m[4:-5])print(Important_Books2)dict1 = dict(zip(Important_Books1, Important_Books2))# print(dict1)all_list.append(dict1)
''' 列表转字典
list1 = ['key1','key2','key3']
list2 = ['1','2','3']
dict(zip(list1,list2))
{'key1':'1','key2':'2','key3':'3'}
'''
print('&&&&&&&&&&&&&&&&&&&&&&&&&&&&&')
print(all_list)
# mongo_collection.insert_many(all_list)
dddddddddddddd相关推荐
- 安全的交互通道 及 栈回塑检查与伪造
第四章:安全的交互通道 消息钩子,Hook游戏消息处理过程,GetKeyState(),GetAsyncKeyState()和GetKeyBoardState()函数,进程间通信. 消息钩子:SetW ...
- 无法创建接口的实例_什么是接口?
接口 接口概述 接口,是java语言中一种类型,是方法的集合,如果说 类的内部封装了成员变量,构造 方法,和成员方法,那么接口的内部主要就是封装了方法,包含抽象方法,默认方法和静态方法 接口是对功能的 ...
- linux系统初级管理书,Linux系统管理基础--超级适合Linux新手的书
liuyongqing 于 2012-11-15 11:53:18发表: 谢谢分享 liuyongqing 于 2012-11-15 11:53:11发表: 谢谢分享 liuyongqing 于 20 ...
- Qt实践| HTTP知识点-接入某图片验证码系统识别验证码
目录 基本概念 代码与实例 基本概念 这里有一个查询余额的:https://blog.csdn.net/qq78442761/article/details/100096351 下面来看看官方API文 ...
- css中hover的妙用!!
css 中有个属性为hover.当鼠标放上的时候,将其激活,可以实现类似于js的一些,譬如菜单等功能: 22.html文件: <link rel="stylesheet" t ...
- slotformatcombinations_用于确定无线通信系统中的时隙配置的方法和设备与流程
相关申请的交叉引用本申请要求2018年5月11日提交的第62/670,553号美国临时专利申请的权益,所述临时专利申请的全部公开内容全文以引用的方式并入本文中.本公开大体上涉及无线通信网络,且更具体地 ...
- 1. 批处理常用符号详解:
1. 批处理常用符号详解: -------------------------------------------- 1.@ 一般在它之后紧跟一条命令或一条语句,则此命令或语句本身在执行的时候不会显示 ...
- 【JavaScript】原生态兼容IE6的图片轮播
<[Bootstrap]图片轮播组件Carousel>(点击打开链接)虽然做得很不错,但是由于只兼容到IE8,所以没有用的.其实原生态兼容IE6的图片轮播并没有想象中的那么难,网上的很多兼 ...
- 原来js可以这样用。类似51la.cnzz统计的js接口
自己工作的时候遇到的一个要求,发现原来js和php结合竟然可以如此的强大. 张存超php技术博客 今天接到了一个任务,我们有个门户的网站,里面有好几个地区的医院,老板要让不同地区的人访问的时候,弹窗他 ...
最新文章
- 数字图像处理实验(16):PROJECT 06-03,Color Image Enhancement by Histogram Processing
- 7z001怎么解压在安卓手机上面_安卓手机能打开eif文件吗 手机怎么打开eip文件方法...
- 看完这篇,你应该知道什么是Linux了~
- SharePoint 2010新体验2 – Ribbon界面
- 机器学习实战--决策树算法
- 分布式集群架构场景解决方案学习笔记
- redis-数据类型一览
- 辨析ADKJVMJREJDKADT
- L1-046 整除光棍 (20 分)567
- 双指针 -- 验证回文串
- Unity 烘焙材质到单一贴图的脚本
- 制作VOC格式的数据集
- 计算机网络安全题库,2020年计算机网络安全与管理信息题库10月更新
- ThinkPad S2 安装deepin系统,安装rtl8821ce无线网卡驱动,适合deepin/ubuntu
- 携程实时大数据平台实践分享
- [LiteratureReview]A Collaborative Visual SLAM Framework for Service Robots
- Python | 基础学习(二)函数基础、非数字型变量(列表、元组、字典、字符串)、切片、for循环
- shell脚本之俄罗斯方块
- 为什么要用同花顺程序化交易接口?
- 面对工业4.0,我国工业企业的挑战与对策
热门文章
- 华信IT教育201611第一篇博客
- 关于v$process与v$sessionnbsp;o…
- sklearn中的数据集1 (toy_datasets)
- Python(网易云课堂1-20章)
- 【2023秋招】10月11日百度数据挖掘岗校招题目
- Homekit智能家居DIY一智能触摸面板开关
- grails3.3.0_受Grails启发的框架Griffon在0.9.5 RC2中进行了重大改造
- 四级英语口语模拟测试软件,cet4:2013年12月英语四级口语考试模拟试题
- 解决打开Chrome出现 输入密码以解锁您的登录密钥环
- Access数据库的使用