Files
RSSHub-python/rsshub/spiders/cninfo/announcement.py
hillerliao 36cd8f55ce cninfo fix
2020-09-03 22:44:34 +08:00

54 lines
2.2 KiB
Python

import requests
from rsshub.utils import DEFAULT_HEADERS
domain = 'http://www.cninfo.com.cn'
def parse(post):
item = {}
item['title'] = post['secName'] + '(' + post['secCode'] + ')' + ': ' + post['announcementTitle']
item['description'] = item['title']
item['link'] = 'http://static.cninfo.com.cn/' + post['adjunctUrl']
item['pubDate'] = post['announcementTime']
return item
def ctx(stock_id='', category=''):
stock_id = '' if stock_id == 'all' else stock_id
stock_name = ''
stock_list = requests.get('http://www.cninfo.com.cn/new/data/szse_stock.json', headers=DEFAULT_HEADERS).json()['stockList']
for stock in stock_list:
if stock['code'] == stock_id :
stock_id = stock['orgId']
stock_name = stock['zwjc']
break
import datetime
nowtime = datetime.datetime.now()
deltaday=datetime.timedelta(days=1)
start_date = datetime.datetime.strftime(nowtime- 700 * deltaday, '%Y-%m-%d')
end_date = datetime.datetime.strftime(nowtime + 2 * deltaday, '%Y-%m-%d')
seDate = start_date + '~' + end_date
searchkey = ''
column = ''
if '_' in category:
searchkey = category.split('_')[-1]
category = category.split('_')[0]
category = '' if category == 'all' else f'category_{category}_szsh'
# column = 'szse'
DEFAULT_HEADERS.update({'Referer': domain})
post_data = {'pageNum':'1', 'pageSize': '30','column': column, 'tabName':'fulltext', 'plate': '', \
'category': category, 'secid': stock_id, 'seDate': seDate, 'searchkey': searchkey }
print(post_data)
posts = requests.post(f'{domain}/new/hisAnnouncement/query', \
data=post_data, headers=DEFAULT_HEADERS).json()['announcements']
return {
'title': f'{stock_name}-{category}-公告-巨潮资讯',
'link': f'{domain}/new/commonUrl/pageOfSearch?url=disclosure/list/search&checkedCategory=category_{category}_szsh&searchkey={searchkey}',
'description': f'{stock_name}关于{category}的公告-巨潮资讯',
'author': 'hillerliao',
'items': list(map(parse, posts))
}