下载巨潮网络数据的python脚本

从巨潮网络下载财报数据,觉得手动比较麻烦,就做了一个简单的python脚本。具体主要代码如下:

    driver = webdriver.PhantomJS(executable_path='浏览器引擎/自己使用phantomjs')
    if int(stockNumber) >= 600000:
        dst_url = 'http://www.cninfo.com.cn/cninfo-new/disclosure/sse'
    else:
        dst_url = 'http://www.cninfo.com.cn/cninfo-new/disclosure/szse'
    
    driver.get(dst_url)
    prefixpath = "文件夹路径"
    driver.find_element_by_class_name("input-stock").send_keys(stockNumber)
    driver.find_element_by_xpath("//ul[@id='stock_list']/li[1]/a").click()
  
    prefixpathname = prefixpath+stockNumber+"/"
    if os.path.exists(prefixpathname):
        pass
    else:
        os.mkdir(prefixpathname)
    #driver.find_element_by_xpath("//ul[@id='stock_list']/li[1]").send_keys(Keys.ENTER)
    #切换网页,以获取新弹出的网页窗口
    for handle in driver.window_handles:
        driver.switch_to_window(handle)
        #print('current url:%s'%driver.current_url)
    time.sleep(1
### ECharts Legend 鼠标移入显示背景色自定义样式 为了实现当鼠标移入到 `legend` ,能够动态改变其背景颜色并展示对应样式的功能,可以通过监听事件以及手动调整 DOM 的方式来完成。 以下是具体实现方法: #### 实现思路 通过绑定 `legendselectchanged` 和 `mouseover`/`mouseout` 等事件,在这些事件触发动态修改对应的 `DOM` 节点属性或者调用 API 来更新表状态。可以利用 `setOption` 或者直接操作 HTML 元素的方式更改背景颜色和其他样式[^1]。 #### 示例代码 以下是一个完整的示例代码片段,展示了如何在鼠标悬停于 `legend` 上为其添加背景色效果: ```javascript // 初始化 echarts 表实例 var chartDom = document.getElementById('main'); var myChart = echarts.init(chartDom); // 定义数据 var option = { legend: { data: ['类别A', '类别B', '类别C'], orient: 'vertical', left: 'left' }, series: [{ name: '访问来源', type: 'pie', radius: '50%', data: [ { value: 40, name: '类别A' }, { value: 30, name: '类别B' }, { value: 20, name: '类别C' } ] }] }; myChart.setOption(option); // 获取 legend 对应的 dom 并设置 hover 效果 const legends = myChart.getDom().querySelectorAll('.echarts-for-react .ec-svg-container g text tspan'); legends.forEach((item, index) => { item.addEventListener('mouseenter', () => { const targetLegend = legends[index]; targetLegend.setAttribute('fill', '#FF7F50'); // 修改文字颜色为橙红色 targetLegend.parentNode.style.backgroundColor = '#f0f8ff'; // 设置背景颜色浅蓝色 }); item.addEventListener('mouseleave', () => { const targetLegend = legends[index]; targetLegend.setAttribute('fill', '#000'); // 还原文字颜色为黑色 targetLegend.parentNode.style.backgroundColor = ''; // 清除背景颜色 }); }); ``` 上述代码实现了如下功能: - 当鼠标进入某个 `legend` 文本区域,会将其父节点的背景颜色更改为浅蓝 (`#f0f8ff`) 同将该文本的颜色变为橙红(`#FF7F50`)[^2]。 - 移开鼠标后恢复原始的状态。 需要注意的是,由于不同版本间可能存在差异,因此实际开发过程中可能需要适当调整选择器路径以匹配当前使用的 ECharts 版本中的结构变化[^3]。 #### 注意事 如果希望进一步优化用户体验,则还可以考虑引入 CSS 动画过渡效果使切换更加平滑自然;另外对于大规模复杂目建议封装成组件以便维护管理。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值