关键字: 百度股票
爬虫
文件保存
前言
百度股票 URL :https://gupiao.baidu.com/stock/
+ sz300059
+.html
,其中以 sh 开头的代表上交所挂牌交易的股票,以 sz 开头的代表深交所挂牌交易的股票。
第一步我们要在 东方财富网 爬取类似 sz300059
这样的股票代号:
HTML下载器
def getHTML(url):
try:
r = requests.get(url)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return ""
URL生成器
def getStockURL(nameurl, urllist):
html = getHTML(nameurl) #调用HTML下载器
name = re.findall('[s][hz]\d{6}', html)
for item in name:
urllist.append("https://gupiao.baidu.com/stock/%s.html" %item)
- 从 东方财富网 下载类似
sz300059
这样的股票代号,我们调用re
库,再用正则表达式[s][hz]\d{6}
去完成匹配。
获取股票信息并保存
def getStockInfo(urllist, fpath):
for i in range(len(urllist)):
html = getHTML(urllist[i]) #调用HTML下载器
soup = BeautifulSoup(html, "html.parser")
try:
info = {
}
title = soup.find_all('a', attrs={
'class':