获取所有的沪深股票代码和名称
数据的来源
别人整理好的
同花顺
东方(南方)财富网
…
其他:
类似的网站很多,顺便找一个比较好抓取的。
实例抓取代码
# -*- coding: utf-8 -*-
# 导入BeautifulSoup和requests模块
from bs4 import BeautifulSoup
import requests
import os
# 获取字符串格式的html_doc。由于content为bytes类型,故需要decode()
url = "https://hq.gucheng.com/gpdmylb.html"
html_doc = requests.get(url).content.decode()
# 使用BeautifulSoup模块对页面文件进行解析
soup = BeautifulSoup(html_doc, 'html.parser')
# 查找所有tag为'a'的html元素,并生成列表
links = soup.find('section', {'class':'stockTable'}).find_all('a')
# 获取每个元素中'href'键对应的键值--即URL,并放入url_lst
url_lst = []
for item in links:
# url = item.get('href')
url = item.contents[0]+","+item.get('href')+"\n"
url_lst.append(url)
# 过滤url_lst--仅保留包含http的URL
# url_lst = list(filter(lambda url_str: 'http' in url_str, url_lst))
# 写入到文件
with open('stock_base.data', 'w') as f:
f.writelines(url_lst)