
开篇寄语
伯衡君之前写了有关三篇投资的文章,似乎挺受欢迎,那么接下来再写一篇,这次是股票了,使用python爬取股票代码和名称,因为本站用户大多为中国大陆用户,所以就以中国证券市场的股票代码和名称为例了,其他国家的股票市场可以参考代码的书写来爬取,道理是相通的,爬取这些主要是来分析每种股票所对应的板块和未来的盈利可能性,以增加盈利的可能性。
前情提要
内容详情
要想爬取股票代码和名称,自然是需要有一个目标网站,伯衡君在网上搜索了一番,找到一个名为证券之星(点击前往股票代码页),看到代码很全,而且爬取比较容易,于是就开始爬取了。
分析网页代码构成,从浏览器打开审查元素,看到网页是gb2312语言格式,那么就需要在撰写代码时记得将它转化为能够不输出乱码的utf-8格式,然后又看到网页代码如下所示:

可以看出基本上这些股票代码都在div>ul>li中的<span>和<a>标签中,结构比较简单,那么就可以进行代码的撰写了,打开vscode。
有关python爬虫的基础教程伯衡君之前有写,所以这里就不多做介绍了,可以参看下方文章:
- 《来和伯衡君一起快速入门Python爬虫——Beautifulsoup篇(一)》
- 《来和伯衡君一起快速入门Python爬虫——Beautifulsoup篇(二)》
- 《来和伯衡君一起快速入门Python爬虫——Beautifulsoup篇(三)》
- 《来和伯衡君一起快速入门Python爬虫——Beautifulsoup篇(四)》
- 《来和伯衡君一起快速入门Python爬虫——Beautifulsoup篇(五)》
以下是提供的参考代码:
import requests #引用requests库 from bs4 import BeautifulSoup #引用Beautifulsoup库 import csv import re code = [] name = [] url = "http://quote.stockstar.com/stock/stock_index.htm" #命名要爬取的网站地址,可替换成你想要替换的网址 req = requests.get(url) req.encoding = "gb2312" soup = BeautifulSoup(req.text, "html.parser") for i in soup.find_all('ul', class_="seo_pageList"): for a in i.find_all('li'): sm = re.findall('\d+', a.text.strip()) ms = a.text[6:] code.append(sm) name.append(ms) with open("out.csv","w") as f: cr = csv.writer(f,delimiter=";",lineterminator="\n") cr.writerow(["股票代码","股票名称"]) for i,j in zip(code,name): cr.writerow(["=\"" + i[0]+ "\"",j]) f.close()
运行后,会生成一个csv文件的Excel表格,打开后就是股票代码和名称了,之后就可以进行科学分析了,比如伯衡君的一位朋友就是这些分析的:

分析的头头是道,不如用真金白银去实际操作来验证自己的分析,岂不妙哉。
- 我的微信
- 微信扫一扫加好友
-
- 我的微信公众号
- 扫描关注公众号
-