python爬取股票代码_python爬取所有股票的个股资讯

本文介绍了如何使用Python爬虫获取东方财富网上的所有股票代码,并通过新浪财经爬取相应股票的详细资讯,包括处理编码问题和过滤掉未上市或已退市的股票。整个过程涉及到requests、pyquery等库的使用,并将数据存储到数据库。

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

前言

由于毕设是要对股票的新闻报道进行情感分析,所以爬取所有股票的个股资是必要的前提工作了。一开始准备直接在

东方财富网上爬取所有的个股资讯,但是在获得个股资讯列表的时候要模拟事件。

前提工作

安装python3(下载地址),在安装的时候选择添加到环境变量,如果没有选择,可以通过【右键我的电脑】->【属性】->【高级系统设置】->【环境变量】->【path】将安装的Python3的路径添加到path中。

通过命令行安装requests库:

pip install requests

3.安装 lxml

pip install lxml

4.安装pyquery

pip install pyquery

使用详情见静觅 » Python爬虫利器六之PyQuery的用法

5.安装pymysql

前提是先安装好mysql,然后同样采用

pip install pymysql

爬取数据

1. 爬取所有股票代码

分析网页的结果,由图片可知,股票代码为target为_blank的a标签的文本括号中的文字,股票名称为括号前的文字。因此对获得的text利用split函数进行处理得到股票代码和股票名称。

def getCodes():

codes=[]

url='http://quote.eastmoney.com/stocklist.html'

req =requests.get(url,timeout=30)

reporthtml

### 使用 Python 实现东方财富网数据爬取 为了从东方财富网站获取所需的信息,可以采用 `requests` 和 `BeautifulSoup` 库来处理 HTTP 请求并解析 HTML 文档。下面是一个简单的例子展示如何抓取沪深 A 股列表页面中的部分信息。 #### 导入必要的库 ```python import requests from bs4 import BeautifulSoup ``` #### 发送请求并获取网页内容 定义函数用于发送 GET 请求至目标 URL 并返回响应对象的内容: ```python def get_page_content(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)', } response = requests.get(url, headers=headers) if response.status_code == 200: return response.text else: raise Exception(f"Failed to load page {url}") ``` #### 解析HTML文档提取有用信息 创建一个新的方法用来分析接收到的 HTML 数据,并从中抽取特定表格内的股票名称及其对应的代码作为样例输出: ```python def parse_html(html_doc): soup = BeautifulSoup(html_doc, "html.parser") table_body = soup.find('tbody') rows = table_body.find_all('tr') stocks_info = [] for row in rows[:5]: # 只显示前五行简化结果 cols = row.find_all('td') stock_name = cols[1].text.strip() stock_code = cols[2].text.strip() item = {"name": stock_name, "code": stock_code} stocks_info.append(item) return stocks_info ``` #### 主程序逻辑 最后,在主函数里调用上述两个辅助功能完成整个流程,并打印最终得到的结果集。 ```python if __name__ == "__main__": url = "http://quote.eastmoney.com/center/gridlist.html#hs_a_board" html_content = get_page_content(url)[^1] parsed_data = parse_html(html_content) print(parsed_data) ``` 此段脚本实现了基本的功能需求,即访问指定链接读取网页源码之后再定位到相应的 `<table>` 元素之下遍历每一行记录从而获得每只个股的名字以及编号等基本信息。 需要注意的是实际操作过程中可能遇到反爬机制等问题,这时就需要考虑加入延时等待、更换 UserAgent 或者利用代理 IP 来规避检测措施[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值