爬虫策略制定
1、 从东方财富网中获取(http://quote.eastmoney.com/stocklist.html)股票代码
2、 从网易财经中可以直接下载csv格式文件,地址类似于http://quotes.money.163.com/trade/lsjysj_600508.html#01b07
3、 两个网站都不需要cookie,很好爬,注意控制访问时间间隔就可以,爬信息不要太暴力了
4、 东方财富网中获取的股票代码中好多都是基金的代码(如1 、5 、等开头),这类基金在网易财经中无法获得数据,故要ban掉这些股票代码
获取股票代码
这里要用到beautifulsoup,pip install bs4
所有的股票代码都在 <div id="quotesearch">
下的 两个 <ul>
标签下的 <a>
标签中;
获取的股票代码存储到本地txt ,或者存储到redis数据数据库中, 方便分布式爬取或是中途停止重新爬取
redis安装可以看这里:https://blog.csdn.net/tonydz0523/article/details/82493480
代码如下:
import requests
import random
from bs4 import BeautifulSoup as bs
import time
import redis
def get_stock_names():
"""
通过东方财富网上爬取股票的名称代码,并存入redis数据库和本地txt文档
"""
rds = redis.from_url('redis://:666666@192.168.3.98:6379', db=1, decode_responses=True) # 连接redis db1
url = "http://quote.eastmoney.com/stocklist.html"
headers = {
'Referer': 'http://quote.eastmoney.com',
'User-Agent':