【Python爬虫学习】股票基金数据定向爬虫

本文介绍了一个Python爬虫项目,目标是从指定网站抓取上交所和深交所的股票名称及交易信息。首先,解释了选择数据源的原则和方法。接着,详细描述了程序的结构设计,包括三个步骤:获取股票列表、获取个股信息和存储结果到文件。通过分析网页源码,确定了如何定位股票编号和相关信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

功能描述

目标:获取上交所和深交所所有股票的名称和交易信息

输出:保存到文件中

技术路线:requests ­bs4­ re

候选数据网站的选择
选取原则:股票信息静态存在于HTML页面中,非js代码生成,没有Robots协议限制

选取方法:浏览器F12,源代码查看等

选取心态:不要纠结于某个网站,多找信息源尝试

程序的结构设计

步骤1:从东方财富网获取股票列表(2020年也改存在js了)我们这里选取其他网页(天天基金网)

步骤2:根据股票列表逐个获取个股信息

步骤3:将结果存储到文件


查看网页源码

通过网站我们可以看到,https://fund.eastmoney.com/006003.html,每支股票网址是以https://fund.eastmoney.com/+6位数字+.html构成的

接下来我们查看全部股票的网页源码(https://fund.eastmoney.com/fund.html#os_0;isall_0;ft_;pt_1),可以发现,对应股票的所有信息被div标签包围,每支股票对应的6位数字被tr标签包围,,

那我们就可以通过搜寻div标签下的tr标签下的id所对应的个股编号,但是,这里的个股编号是tr+6位数字,而我们只需要6位数字即可,那我们可以通过下标索gp[1:]这样来得到6位数字。在个股网页中,个股的信息内容对应的class类是merchandiseDetail,个股的名称对应的class类是fundDetail-tit


源代码

import re
import requests
import bs4
from  bs4 import BeautifulSoup
import traceback

def getHTMLTEXT(url):
    try:
        r = requests.get(url,timeout = 30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return  '爬取网页失败'

def getStockList(list,stock_url):
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值