同花顺基金公司财报数据爬虫

这段代码实现了一个使用Selenium和BeautifulSoup爬取同花顺网站上基金公司的财务数据,并将数据整理成Excel表格的爬虫。爬虫首先获取基金公司列表,然后对每个公司分别爬取公司概况、绩效评估、资产配置和行业投资等信息,并存储到不同的Excel工作表中。

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

#这个文件是分析获得各个基金公司的IP地址

from selenium import webdriver
import requests
import bs4
from bs4 import BeautifulSoup
from detail_right import spider_main

browser = webdriver.Chrome() #创建一个Chrome驱动器对象

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 getCompanyURLs(start_url):
    cp_urls = []
    cp_names = []
    browser.get(start_url)
    html = browser.page_source
    soup = BeautifulSoup(html,"html.parser")
    cp_links = soup.find_all('td',{'class':'links_td links_val'})
    for i in range(50):
        cp_link = cp_links[i+1].find('a').attrs['href']  #第一个不属于公司链接
        cp_name = cp_links[i+1].find('a').get_text()
        cp_urls.append(cp_link)
        cp_names.append(cp_name)
    return cp_urls,cp_names

def main():
    start_url = 'http://fund.10jqka.com.cn/datacenter/jjgspm/'
    cp_urls,cp_names = getCompanyURLs(start_url)
    for i in range(50):
        cp_url = cp_urls[i]
        cp_name = cp_names[i]
        spider_main(cp_url,cp_name,i+1)
    
main()

 

 

 

'''这是主文件所调用的获取基金公司财报相关数据的细节页面'''

#获取细节信息并写入到excel多个sheet表中

import requests
import bs4
from bs4 import BeautifulSoup
from openpyxl import Workbook
import bs4
import time

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 get_data(book, cp_url,cp_name):
    html = getHTMLText(cp_url)
    soup = BeautifulSoup(html,"html.parser")
    sheet1 = book.create_sheet("公司概况表",0)  #按照编号位置来创建sheet
    sheet2 = book.create_sheet("绩效评估表",1)
    
    #获取公司基本情况
    cp_info =soup.find('ul',{'class':'rank_list fl'}).find_all('li')
    sheet1.cell(row=1,column=1).value=cp_name
    sheet1.cell(row=2,column&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值