北上资金一直被誉为“聪明钱”,擅长左侧交易。现在很多机构和大户都会盯着北上资金调整自己的交易。这似乎已经是公开的秘密了。香港证券交易python教程所每天收盘都会公布当天北上资金的持股量,所以我们也可以爬取这份数据抄一抄北上资金的作业。

我们分别爬取沪港通和深港通的数据,然后再将两个 dataframe 合并起来,并保存为 csv 文件。

好了,不多说了上代码吧。

Code


import urllib.request, urllib.parse, urllib.error
from bs4 import BeautifulSoup
import ssl
import pandas as pd# Ignore SSL certificate errors
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONEurls = ['https://sc.hkexnews.hk/TuniS/www.hkexnews.hk/sdw/search/mutualmarket_c.aspx?t=sh&t=sh', 'https://sc.hkexnews.hk/TuniS/www.hkexnews.hk/sdw/search/mutualmarket_c.aspx?t=sh&t=sz']dates = []
df_list = []for url in urls:html = urllib.request.urlopen(url, context=ctx).read()soup = BeautifulSoup(html, 'lxml')date = soup.find('input', class_='input-searchDate')['value']dates.append(date)codes = [code.find('div', class_='mobile-list-body').string for code in soup.find_all('td',class_='col-stock-code')]names = [name.find('div', class_='mobile-list-body').string for name in soup.find_all('td',class_='col-stock-name')]shareholding = [int(shareholding.find('div', class_='mobile-list-body').string.replace(',', '')) for shareholding in soup.find_all('td',class_='col-shareholding')]percent = [float(percent.find('div', class_='mobile-list-body').string.strip('%')) for percent in soup.find_all('td',class_='col-shareholding-percent')]df = pd.DataFrame(list(zip(codes, names, shareholding, percent)), columns=['code', 'stock', 'shareholding', 'shareholding%'])df_list.append(df)output = pd.DataFrame()
if dates[0] == dates[1]:# combine dataframe sz and dataframe shoutput = pd.concat(df_list)output.to_csv(fname, encoding='utf-8', index=False)
else:print('failed to get northbound data from web')

作者:Yuki

Python 爬取每日北上资金数据相关推荐

  1. python实战|python爬取58同城租房数据并以Excel文件格式保存到本地

    python实战|python爬取58同城租房数据并以Excel文件格式保存到本地 一.分析目标网站url 目标网站:https://cq.58.com/minsuduanzu/ 让我们看看网站长啥样 ...

  2. python爬取微博热搜数据并保存!

    主要用到requests和bf4两个库将获得的信息保存在d://hotsearch.txt下importrequests;importbs4mylist=[]r=requests.get(ur- 很多 ...

  3. Python爬取京东任意商品数据实战总结

    利用Python爬取京东任意商品数据 今天给大家展示爬取京东商品数据 首先呢还是要分思路的,我分为以下几个步骤: 第一步:得到搜索指定商的url 第二步:获得搜索商品列表信息 第三步:对得到的商品数据 ...

  4. python 爬取24小时天气数据

    python 爬取24小时天气数据 1.引入相关库 # -*- coding: utf-8 -*- import requests import numpy as np 关于爬虫,就是在网页上找到自己 ...

  5. 用python爬取基金网信息数据,保存到表格,并做成四种简单可视化。(爬虫之路,永无止境!)

    用python爬取基金网信息数据,保存到表格,并做成四种简单可视化.(爬虫之路,永无止境!) 上次 2021-07-07写的用python爬取腾讯招聘网岗位信息保存到表格,并做成简单可视化. 有的人留 ...

  6. python爬淘宝app数据_一篇文章教会你用Python爬取淘宝评论数据(写在记事本)

    [一.项目简介] 本文主要目标是采集淘宝的评价,找出客户所需要的功能.统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等. [二.项目准备工作] 准备Pycharm,下载安装等,可以参考这篇文章 ...

  7. PYTHON爬取汽车之家数据

    PYTHON爬取汽车之家数据 使用知识 使用BeautifulSoup模块 使用正则表达式 使用到多线程爬取 使用说明 使用前请安装BeauifulSoup 起始页面: https://www.aut ...

  8. 利用python爬取58同城简历数据

    利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...

  9. 利用python爬取58同城简历数据_利用python爬取58同城简历数据-Go语言中文社区

    利用python爬取58同城简历数据 最近接到一个工作,需要获取58同城上面的简历信息(http://gz.58.com/qzyewu/).最开始想到是用python里面的scrapy框架制作爬虫.但 ...

最新文章

  1. win8音频服务器未响应,大神为你详解win8系统右键点击文件提示“未响应”的解决教程...
  2. 【ESP8266】NONOS SDK开发,串口发送、接收与中断
  3. UC Berkeley提出变分判别器瓶颈,有效提高对抗学习平衡性
  4. Elasticsearch原理与调优
  5. C语言 函数指针和指针函数区别 - C语言零基础入门教程
  6. 项目Alpha冲刺--9/10
  7. php curl keep alive,php curl 保持长连接
  8. Kotlin入门(31)JSON字符串的解析
  9. VoltDB开篇 简介
  10. python字典默认排序_Python字典练习:设置默认获取排序,小,知识点,setdefaultgetsorted...
  11. 汉王ocr sdk android,汉王标准印刷体OCR SDK技术白皮书.doc
  12. android 改机型玩王者,全机型60帧一键修改
  13. 2022必看花展 IFEX昆明国际花卉园艺展,新展期11月11-13日
  14. 串口的空闲中断+DMA接收(附F4代码)
  15. java中如何ping一个ip地址
  16. LiveNVR安防摄像头Web无插件直播平台页面的快速集成方法
  17. 关于Vcc和Vdd的区别
  18. Generator 函数的详解:
  19. apqp过程流程图及编写规则_APQP 过程流程图、FMEA、控制计划01
  20. 【python--networkx】函数说明+代码讲解

热门文章

  1. openstack RPC通信
  2. uniapp实现app的强制更新
  3. 6 数据的表现形式常量以及常量的几种类型
  4. 酰肼PEG酰肼,HZ-PEG-HZ
  5. P1852 跳跳棋(建模LCA)
  6. 关于域名备案后的注意事项,血淋淋的教训
  7. [Zer0pts2020]easy strcmp细节探究
  8. TypeScript 简介
  9. Yielding Processes
  10. 5年Java面试阿里P6经验总结