Skip to content

feat(route): add SSE REITs disclosure - #23545

Closed
weixshaw wants to merge 1 commit into
DIYgod:masterfrom
weixshaw:route/sse-reits
Closed

weixshaw wants to merge 1 commit into
DIYgod:masterfrom
weixshaw:route/sse-reits

Conversation

@weixshaw

Copy link
Copy Markdown

Involved Issue / 该 PR 相关 Issue

Close #

Example for the Proposed Route(s) / 路由地址示例

/sse/disclosure/reits

New RSS Route Checklist / 新 RSS 路由检查表

  • New Route / 新的路由
  • Anti-bot or rate limit / 反爬/频率限制
    • If yes, do your code reflect this sign? / 如果有, 是否有对应的措施?
  • Date and time / 日期和时间
    • Parsed / 可以解析
    • Correct time zone / 时区正确
  • New package added / 添加了新的包
  • Puppeteer

Resubmission of #23334. Same situation as #23333: the original PR was closed because a review-fix commit was accidentally pushed under another contributor's identity (a git config mistake on my side, not impersonation — apologies again to magazian and TonyRL). This PR is a fresh branch off the latest master with a single commit under my correct identity and incorporates the review feedback from #23334 (limit passed through as string).

Note / 说明

Adds a route for the Shanghai Stock Exchange public REITs disclosure announcements (www.sse.com.cn/reits/, the 信息披露 section), complementing #23544 which covers the Shenzhen equivalent.

Data source: official JSON API https://query.sse.com.cn/commonSoaQuery.do with sqlId=REITS_BULLETIN (extracted from the platform's own frontend script search_info.js). The endpoint requires a Referer: https://www.sse.com.cn/ header (verified: without it the API returns an empty error payload); the Referer is set accordingly, which matches the existing pattern in lib/routes/sse/disclosure.ts and lib/routes/sse/inquire.tsx. No other anti-bot measures observed.

Date window: the API requires startDate/endDate (it errors without them; startDate may not be in the future). The handler requests a rolling window of the last 183 days up to tomorrow (to include same-day and pre-announced items), returning the first limit items sorted newest-first by the exchange. With ~40 announcements per month for ~60 listed REITs, this window covers any realistic limit and keeps the first page identical regardless of window size.

Item link & enclosure: the announcement PDF (url field joined with https://www.sse.com.cn, serving application/pdf); verified downloadable.

pubDate: from sseDate (YYYY-MM-DD, Beijing time); parsed with parseDate. The exchange publishes announcement dates only (no time-of-day), matching the handling in lib/routes/sse/disclosure.ts.

category: security code, extended fund abbreviation (falls back to fundAbbr), and announcement type (e.g. 508015, 中信建投明阳智能新能源REIT, 其它).

The pageHelp.pageSize query carries RSSHub's limit common parameter (first page only); it is an API-required pagination field, same pattern as the merged szse REITs route.

@github-actions github-actions Bot added the route label Oct 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

This PR has been automatically closed because the author is explicitly blocked in the vouch list.

@github-actions github-actions Bot closed this Oct 10, 2026
@github-actions github-actions Bot added the spam Low quality PR label Oct 10, 2026
@weixshaw weixshaw mentioned this pull request Oct 10, 2026
5 of 9 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

route spam Low quality PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant