今天上午,A股大跌又上了热搜,创业板跌3%以上,上证指数也逐渐触碰-2%的地方,其他新能源、半导体、军工等基金,都是直接下跌4%以上。很多网友表示不用看也知道我的基金绿了;还有网友表示,没了,没了,全没了一个月又白干了 。关于A股大跌应该和中美10年期国债利差出现倒挂有关系吧。这些经济领域小编也不是很懂,但是我们是学python爬虫的啊,我可以获取股票数据跟大家分析分析。
今天我们就通过python抓取证券之星上当天所有A股数据,爬虫程序主要分为三个部分:网页源码的获取、所需内容的提取、所得结果的整理。我们都知道抓一页的源码容易,但是在网站内大量抓取网页源码却会经常遭到服务器拦截,顿时感觉世界充满了恶意,于是在获取数据的过程中我们需要加上反爬措施。1.伪装流浪器报头,很多网站都会识别User-Agent这个参数,所以请求头最好带上。2.使用代理IP,获取数据的时候目标网站会记录你IP,所以只有不停的更换高匿代理IP才能完美的应对。
关于简单的关于获取股票信息的代码如下:代码里面刚好加了代理IP,有需要的可以了解下。
#! -*- encoding:utf-8 -*- import requests import random # 要访问的目标页面 targetUrl = "http://httpbin.org/ip" # 要访问的目标HTTPS页面 # targetUrl = "https://httpbin.org/ip" # 代理服务器(产品官网 www.16yun.cn) proxyHost = "t.16yun.cn" proxyPort = "31111" # 代理验证信息 proxyUser = "username" proxyPass = "password" proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % { "host" : proxyHost, "port" : proxyPort, "user" : proxyUser, "pass" : proxyPass, } # 设置 http和https访问都是用HTTP代理 proxies = { "http" : proxyMeta, "https" : proxyMeta, } # 设置IP切换头 tunnel = random.randint(1,10000) headers = {"Proxy-Tunnel": str(tunnel)} resp = requests.get(targetUrl, proxies=proxies, headers=headers) print resp.status_code print resp.text
关于股票数据的获取就分享到这里,对爬虫感兴趣的小伙伴可以关注大家交流下,对反爬策略有研究的小伙伴也可以交流下经验。
若有收获,就点个赞吧