Ajax应用场景——以获取雪球网港股代码及公司名称为例
本文作者:方 言,中南财经政法大学金融学院
本文编辑:赵一帆
技术总编:王子一
Stata&Python云端课程来啦!
为了感谢大家长久以来的支持和信任,爬虫俱乐部为大家送福利啦!!!Stata&Python特惠课程双双上线腾讯课堂~爬虫俱乐部推出了Python编程培训课程、Stata基础课程、Stata进阶课程、Stata文本分析、正则表达式、网络爬虫、基本字符串课程。报名课程即可加入答疑群,对报名有任何疑问欢迎在公众号后台和腾讯课堂留言哦。我们在这篇推文的最后提供了每门课程的课程二维码,大家有需要的话可以直接扫描二维码查看课程详情并进行购买哦~
引言
在对比了多家财经网站后,笔者发现雪球网的港股代码和相关信息是较为全面的,因此想要了解港股的友友们可以继续往下跟随哦~
import requests
import json
from pandas.core.frame import DataFrame
symbol_list=[]
name_list=[]
#每页选择显示90家公司,共34页
for i in range(1,34):
base_url="https://xueqiu.com/service/v5/stock/screener/quote/list?page={}&size=90&order=desc&orderby=percent&order_by=percent&market=HK&type=hk&is_delay=true&_=1621565322783".format(i)
headers={
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'
}
response=requests.get(base_url,headers=headers).text
data=json.loads(response)
#只有用json转换之后才可以使用
for item in data['data']['list']:
symbol_list.append(item['symbol'])
name_list.append(item['name'])
在获取真实链接之后,我们通过Preview大致观察数据,可以发现我们需要的代码和公司名称都在其中,除此之外还有相关的日交易数据:data={'代码': symbol_list,'公司名称':name_list} #将列表转换成字典
df1=DataFrame(data,index=None) #将字典转换成为数据框
df2=df1.sort_values(by='代码') #根据代码进行排序
df2.to_csv('雪球网代码.csv',index=False,encoding='utf-8-sig') #输出到csv文件中
由于csv文件的显示问题,在输出港股代码时,会将前面的0自动省去,因此需要对csv文件进行格式设置:可以看到这里港股代码正常显示了:
import requests
import json
from pandas.core.frame import DataFrame
symbol_list=[]
name_list=[]
#每页选择显示90家公司,共34页
for i in range(1,34):
base_url="https://xueqiu.com/service/v5/stock/screener/quote/list?page={}&size=90&order=desc&orderby=percent&order_by=percent&market=HK&type=hk&is_delay=true&_=1621565322783".format(i)
headers={
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36'
}
response=requests.get(base_url,headers=headers).text
data=json.loads(response)
#只有用json转换之后才可以使用
for item in data['data']['list']:
symbol_list.append(item['symbol'])
name_list.append(item['name'])
data={'代码': symbol_list,'公司名称':name_list} #将列表转换成字典
df1=DataFrame(data,index=None) #将字典转换成为数据框
df2=df1.sort_values(by='代码') #根据代码进行排序
df2.to_csv('雪球网代码.csv',index=False,encoding='utf-8-sig') #输出到csv文件中
通过以上代码就可以很轻松的将所有港股代码和公司名称爬取下来,参照着本文的案例,港股的日交易数据也可以用同样的方法进行获取,勤奋的同学们可以抓紧时间学习哦~
腾讯课堂课程二维码
对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!
往期推文推荐
播放列表中的歌单排行
在Stata中轻松运用program编写命令
Meta Analysis in Stata17芒果TV视频弹幕爬取之《我在他乡挺好的》
Stata中的判断神器——confirm命令
cngdf——名义GDP与实际GDP之间的摆渡船最近《扫黑风暴》有点火爆!我从豆瓣评论中发现了这些……
随机森林-Random Forest
复原之神--preserve&restore
合并,“纵”享新丝滑:frameappend & xframeappend什么是全局配置项?|从零开始的Pyecharts(二)帮你拿下数据可视化|从零开始的Pyecharts
Stata助力疫情打卡管理——是谁没有接龙呢?
这十年,《金融研究》的编委和读者偏爱哪些研究话题和文章?【案例展示】Python与数据库交互
学好这一手,英语词典常在手玩转Stata中的数学函数
用spmap看中国空气质量戳穿围城面具:安利&劝退一个专业
走进图文并茂的攻略世界
玩转word文档“大变身”——wordconvert
简述递归
OpenCV库——轻松更换证件照背景色800万年薪!还有谁?!
千古伤心词人,词伤几何?
去哪儿网攻略爬取——跟我一起去大理吧
"有你才有团"——Stata爬取王者荣耀英雄海报
如何获取衡量股民情绪的指标?|东方财富股吧标题爬虫
利用Python构建马科维茨有效边界
关于我们
微信公众号“Stata and Python数据分析”分享实用的Stata、Python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。
武汉字符串数据科技有限公司一直为广大用户提供数据采集和分析的服务工作,如果您有这方面的需求,请发邮件到statatraining@163.com,或者直接联系我们的数据中台总工程司海涛先生,电话:18203668525,wechat: super4ht。海涛先生曾长期在香港大学从事研究工作,现为知名985大学的博士生,爬虫俱乐部网络爬虫技术和正则表达式的课程负责人。
此外,欢迎大家踊跃投稿,介绍一些关于Stata和Python的数据处理和分析技巧。
投稿邮箱:statatraining@163.com投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里为作者署名,并有赏金分成。
2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。