• python获取集思路当日可转债信息


    # -*- coding:utf-8 -*-
    import json
    import requests
    import csv
    import re
    from lxml import etree
    import datetime
    import pandas as pd
    
    def get_dat():
        headers = {
            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
        }
    
        newUrl ="https://www.jisilu.cn/data/cbnew/cb_list/?___jsl=LST___t=1584777951900"
        #最简单的爬虫请求.也可以加上headers字段,防止部分网址的反爬虫机制
        response = requests.get(newUrl)
        #当爬取的界面需要用户名密码登录时候,构建的请求需要包含auth字段
        data = response.content.decode("utf-8")
        dat = json.loads(data)
    
        # 所有数据
        lst_data = []
        for one in dat['rows']:
            # 每一条数据
            lst_dat = []
            # 转债id
            id = one["id"]
            dat_cell = one["cell"]
    
            # 转债名称
            name = dat_cell['bond_nm']
            #股票名称
            stock_nm = dat_cell['stock_nm']
            # 现价
            price = dat_cell['price']
            # 溢价率
            premium_rt = dat_cell['premium_rt']
            # 评级
            rating_cd = dat_cell['rating_cd']
            # 回售触发价
            put_convert_price = dat_cell['put_convert_price']
            # 强赎触发价
            force_redeem_price = dat_cell['force_redeem_price']
            # 剩余时间
            last_time = dat_cell['year_left']
            # 双低
            dblow = dat_cell['dblow']
            #剩余规模
            curr_iss_amt=dat_cell['curr_iss_amt']
            #成交额
            volume=dat_cell['volume']
            #换手率
            turnover_rt = dat_cell['turnover_rt']
            #到期收益
            ytm_rt_tax = dat_cell['ytm_rt_tax']
            #下修次数
            adj_cnt = dat_cell['adj_cnt']
            # 统计日期
            tjrq = datetime.date.today().__format__('%Y-%m-%d')
    
    
    
            lst_dat.append(id)
            lst_dat.append(name)
            lst_dat.append(stock_nm)
            lst_dat.append(price)
            lst_dat.append(premium_rt)
            lst_dat.append(rating_cd)
            lst_dat.append(put_convert_price)
            lst_dat.append(force_redeem_price)
            lst_dat.append(last_time)
            lst_dat.append(dblow)
            lst_dat.append(curr_iss_amt)
            lst_dat.append(volume)
            lst_dat.append(turnover_rt)
            lst_dat.append(ytm_rt_tax)
            lst_dat.append(adj_cnt)
            lst_dat.append(tjrq)
    
            lst_data.append(lst_dat)
        return lst_data
    
    def wirte_csv(data):
        # 1. 创建文件对象
        tjrq2 = datetime.date.today().__format__('%Y-%m-%d')
        c_name ="可转债"+ tjrq2 + ".csv"
        f = open(c_name, 'w', encoding='gbk', newline='')
        # 2. 基于文件对象构建 csv写入对象
        csv_writer = csv.writer(f)
        # 3. 构建列表头
        csv_writer.writerow(["代 码", "转债名称","股票名称", "现 价", "溢价率", "评级",
                         "回售触发价", "强赎触发价", "剩余年限", "双低", "剩余规模","成交额","换手率","到期收益","下修次数","统计日期"])
        # 4. 写入csv文件内容
        for dat in data:
            csv_writer.writerow(dat)
        # 5. 关闭文件
        f.close()
    
    
    if __name__ == '__main__':
        data = get_dat()
        wirte_csv(data)
        # df = pd.DataFrame(data)
        # print(df)
    

      

  • 相关阅读:
    linux下的mysql安装
    linux下解压zip文件
    解決eclipse 的alt + / 快捷鍵不好用
    linux 源代码目录结构
    Linux(ubuntu)下手动安装 firefox 6 并且添加快捷方式图标
    Ubuntu中配置Tomcat与Eclipse整合
    Linux下的tar压缩解压缩命令详解
    ubuntu创建、删除文件及文件夹,强制清空回收站方法
    九度-题目1011:最大连续子序列
    杭电1003-Max Sum
  • 原文地址:https://www.cnblogs.com/hanjiangs/p/14243777.html
Copyright © 2020-2023  润新知