Python 获取天天基金排行

简介: Python 获取天天基金排行

运行后会将结果保存到一个表格文件中。

from selenium.webdriver.chrome.options import Options
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import pandas as pd
from bs4 import BeautifulSoup
import time
import datetime
url_dict = {
    "全部": "http://fund.eastmoney.com/data/fundranking.html#tall;c0;r;szzf;pn10000;ddesc;qsd20191227;qed20201227;qdii;zq;gg;gzbd;gzfs;bbzt;sfbb",
    "股票型": "http://fund.eastmoney.com/data/fundranking.html#tgp;c0;r;szzf;pn10000;ddesc;qsd20191227;qed20201227;qdii;zq;gg;gzbd;gzfs;bbzt;sfbb",
    "混合型": "http://fund.eastmoney.com/data/fundranking.html#thh;c0;r;szzf;pn10000;ddesc;qsd20191227;qed20201227;qdii;zq;gg;gzbd;gzfs;bbzt;sfbb",
    "债券型": "http://fund.eastmoney.com/data/fundranking.html#tzq;c0;r;szzf;pn10000;ddesc;qsd20191227;qed20201227;qdii;zq;gg;gzbd;gzfs;bbzt;sfbb",
    "指数型": "http://fund.eastmoney.com/data/fundranking.html#tzs;c0;r;szzf;pn10000;ddesc;qsd20191227;qed20201227;qdii;zq;gg;gzbd;gzfs;bbzt;sfbb"}
thead = ["基金代码", "基金简称", "日期", "单位净值", "累计净值", "日增长率", "近1周", "近1月",
         "近3月", "近6月", "近1年", "近2年", "近3年", "今年来", "成立来", "自定义", "手续费"]
def getData(key, url, xlsWriter):
    chrome_options = Options()
    chrome_options.add_argument('--headless')
    #chrome_options.add_argument('--disable-browser-side-navigation')
    driver = webdriver.Chrome(options=chrome_options)
    driver.get(url)
    time.sleep(10)
    soup = BeautifulSoup(driver.page_source)
    dbtable = soup.findAll(name="table", attrs={"id": "dbtable"})
    all_dict = {}
    for i in range(len(thead)):
        all_dict[thead[i]] = []
    trs_item = dbtable[0].tbody.findAll(name="tr")
    for tr_item in trs_item:
        ids = tr_item.findAll(name="td")
        for i in range(len(thead)):
            all_dict[thead[i]].append(ids[i + 2].text)
    pd.DataFrame(all_dict).to_excel(excel_writer=xlsWriter, sheet_name=key,index=None)
    print("%s,nums=%d,%s" % (key, len(all_dict[thead[i]]), url))
    driver.close()
if __name__ == "__main__":
    today = datetime.datetime.now().strftime('%Y%m%d')
    xlsWriter = pd.ExcelWriter("wealth%s.xls"%today)  # xls
    for key, url in url_dict.items():
        getData(key, url, xlsWriter)
    xlsWriter.close()



目录
相关文章
|
2月前
|
数据采集 Python
天天基金数据的Python爬虫
天天基金数据的Python爬虫
44 3
|
6月前
|
数据采集 数据挖掘 测试技术
python、R语言ARIMA-GARCH分析南方恒生中国企业ETF基金净值时间序列分析
python、R语言ARIMA-GARCH分析南方恒生中国企业ETF基金净值时间序列分析
|
6月前
|
JSON JavaScript 数据格式
利用 python 分析基金,合理分析数据让赚钱赢在起跑线!(1)
利用 python 分析基金,合理分析数据让赚钱赢在起跑线!(1)
|
数据采集 数据可视化 数据挖掘
中欧医疗基金数据分析(葛兰)——Python
中欧医疗基金数据分析(葛兰)——Python
123 0
|
数据采集 Python
python使用aiohttp通过设置代理爬取基金数据
python使用aiohttp通过设置代理爬取基金数据
|
数据采集 数据可视化 数据挖掘
Python爬虫系列10-交易所股票、基金的数据采集与分析
当大家经历的事情多了,慢慢的遇到事情,就不会急躁,也不会消极负能量,而是很冷静地面对,然后鼓励自己,只要努力,一定可以越来越好,不要自己给自己压力。 人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己。 学习如逆水行舟不进则退。
Python爬虫系列10-交易所股票、基金的数据采集与分析
|
2天前
|
存储 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第39天】在数字时代的浪潮中,掌握编程技能如同掌握了一门新时代的语言。本文将引导你步入Python编程的奇妙世界,从零基础出发,一步步构建你的第一个程序。我们将探索编程的基本概念,通过简单示例理解变量、数据类型和控制结构,最终实现一个简单的猜数字游戏。这不仅是一段代码的旅程,更是逻辑思维和问题解决能力的锻炼之旅。准备好了吗?让我们开始吧!
|
2天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能浪潮下的自我修养:从Python编程入门到深度学习实践
【10月更文挑战第39天】本文旨在为初学者提供一条清晰的道路,从Python基础语法的掌握到深度学习领域的探索。我们将通过简明扼要的语言和实际代码示例,引导读者逐步构建起对人工智能技术的理解和应用能力。文章不仅涵盖Python编程的基础,还将深入探讨深度学习的核心概念、工具和实战技巧,帮助读者在AI的浪潮中找到自己的位置。
|
4天前
|
设计模式 算法 搜索推荐
Python编程中的设计模式:优雅解决复杂问题的钥匙####
本文将探讨Python编程中几种核心设计模式的应用实例与优势,不涉及具体代码示例,而是聚焦于每种模式背后的设计理念、适用场景及其如何促进代码的可维护性和扩展性。通过理解这些设计模式,开发者可以更加高效地构建软件系统,实现代码复用,提升项目质量。 ####
|
3天前
|
机器学习/深度学习 存储 算法
探索Python编程:从基础到高级应用
【10月更文挑战第38天】本文旨在引导读者从Python的基础知识出发,逐渐深入到高级编程概念。通过简明的语言和实际代码示例,我们将一起探索这门语言的魅力和潜力,理解它如何帮助解决现实问题,并启发我们思考编程在现代社会中的作用和意义。