MCPcopy Create free account

hub / github.com/colorfulandcjy0806/Arxiv-tracker / functions

Functions82 in github.com/colorfulandcjy0806/Arxiv-tracker

↓ 23 callersFunction_esc
(x)
arxiv_tracker/sitegen.py:11
↓ 18 callersFunction_esc
(x: Optional[str])
arxiv_tracker/email_template.py:10
↓ 4 callersFunction_extract_from_text
(s: str)
arxiv_tracker/extrascrape.py:19
↓ 3 callersFunction_chat_completions_request
统一的 OpenAI 兼容 Chat Completions 请求(requests 直连)。 适配 DeepSeek / SiliconFlow / 其他 OAI 兼容服务。
arxiv_tracker/llm.py:46
↓ 3 callersFunction_dedup_keep_order
(lst: List[str])
arxiv_tracker/extractors.py:73
↓ 3 callersFunction_field_or
(fields: List[str], term: str)
arxiv_tracker/query.py:14
↓ 3 callersFunction_first_sentence
取第一句,尽量不截断;超过 max_chars 时裁剪但不加 '…'。
arxiv_tracker/summarizer.py:19
↓ 3 callersFunctionfetch_arxiv_feed
拉取 arXiv Atom Feed。先 HTTPS,失败则 HTTP 回退。
arxiv_tracker/client.py:75
↓ 3 callersFunctionparse_feed
(xml_text: str)
arxiv_tracker/parser.py:7
↓ 2 callersFunction_build_page
(title: str, sub: str, cards_html: str, history_html: str, theme_mode: str, accent: str)
arxiv_tracker/sitegen.py:191
↓ 2 callersFunction_dedup
(urls)
arxiv_tracker/extrascrape.py:62
↓ 2 callersFunction_ensure_dir
(p: str)
arxiv_tracker/output.py:5
↓ 2 callersFunction_json_loose
宽松 JSON 解析:尽力从文本中抽出首个 {...} 为 JSON。
arxiv_tracker/llm.py:7
↓ 2 callersFunction_kw_group
为一个逻辑关键词构造一个子查询: - 先尝试短语精确(含连字符/空格变体) - 若包含 'open vocabulary' 与 'segmentation',再加一个“拆词 AND”备选
arxiv_tracker/query.py:28
↓ 2 callersFunction_norm_url
(u: str)
arxiv_tracker/extrascrape.py:15
↓ 2 callersFunction_parse_dt
(s: str)
arxiv_tracker/cli.py:183
↓ 2 callersFunction_render_lang_block
(lang_label: str, it: Dict[str, Any], summ: Optional[Dict[str, str]],
arxiv_tracker/output.py:16
↓ 2 callersFunction_send_ssl
(smtp_server, smtp_port, smtp_user, smtp_pass, msg, debug, timeout)
arxiv_tracker/mailer.py:21
↓ 2 callersFunction_send_starttls
(smtp_server, smtp_port, smtp_user, smtp_pass, msg, debug, timeout)
arxiv_tracker/mailer.py:28
↓ 2 callersFunction_split_keywords
(values)
arxiv_tracker/cli.py:27
↓ 2 callersFunction_sum_for_lang
(L)
arxiv_tracker/cli.py:296
↓ 2 callersFunction_write
(path: str, text: str)
arxiv_tracker/sitegen.py:187
↓ 2 callersFunctionbuild_search_query
生成 arXiv API 的 search_query 字符串。 - categories: ["cs.CV","cs.LG"] -> (cat:cs.CV OR cat:cs.LG) - keywords: 每个 kw 变成一个 _kw_group,关键词之间用 OR
arxiv_tracker/query.py:52
↓ 2 callersMethodfrom_file
(cls, path: str)
arxiv_tracker/config.py:17
↓ 2 callersFunctionheuristic_paragraphs
(item: Dict[str, Any])
arxiv_tracker/summarizer.py:28
↓ 2 callersFunctionsave_json
(items: List[Dict[str, Any]], out_dir: str)
arxiv_tracker/output.py:8
↓ 2 callersFunctionsave_markdown
(items: List[Dict[str, Any]], out_dir: str, summaries_zh: Dict[str, Dict[str, str]] = None,
arxiv_tracker/output.py:38
↓ 1 callersFunction_attach_file
(msg: MIMEMultipart, filepath: str)
arxiv_tracker/mailer.py:9
↓ 1 callersFunction_card
(it: Dict[str, Any], trans_zh: Optional[Dict[str,str]], sum_zh: Optional[Dict[str,str]],
arxiv_tracker/sitegen.py:129
↓ 1 callersFunction_clean_url
去掉 URL 末尾的标点等尾巴(如句点)
arxiv_tracker/extractors.py:41
↓ 1 callersFunction_css
(accent: str = "#2563eb")
arxiv_tracker/sitegen.py:86
↓ 1 callersFunction_dedup_addrs
(seq)
arxiv_tracker/cli.py:62
↓ 1 callersFunction_detect
(items, text)
arxiv_tracker/summarizer.py:35
↓ 1 callersFunction_detect_tasks
(text, title="", comments="")
arxiv_tracker/summarizer.py:43
↓ 1 callersFunction_do_get
带重试的 GET:对超时/连接错误/部分 5xx&429 做重试。
arxiv_tracker/client.py:40
↓ 1 callersFunction_expand_variants
为一个关键词生成若干变体:连字符/空格、大小写不敏感
arxiv_tracker/query.py:18
↓ 1 callersFunction_extract_from_html
(url: str, timeout: int)
arxiv_tracker/extrascrape.py:32
↓ 1 callersFunction_extract_from_pdf_head
只取 PDF 前 head_bytes(默认 256KB),用 bytes 正则匹配 URL。
arxiv_tracker/extrascrape.py:40
↓ 1 callersFunction_extract_stamp_from_path
从 outputs/arxiv_YYYYMMDD_HHMMSS.json 推断快照 stamp;兜底为当天日期
arxiv_tracker/cli.py:46
↓ 1 callersFunction_fallback_stamp
(p: str)
arxiv_tracker/cli.py:404
↓ 1 callersFunction_get
(url: str, timeout: int = 10)
arxiv_tracker/extrascrape.py:24
↓ 1 callersFunction_history_list
(archive_dir: str, keep: int)
arxiv_tracker/sitegen.py:256
↓ 1 callersFunction_host_of
(u: str)
arxiv_tracker/extractors.py:47
↓ 1 callersFunction_is_code_host
(h: str)
arxiv_tracker/extractors.py:56
↓ 1 callersFunction_is_project_like
(u: str, h: str)
arxiv_tracker/extractors.py:59
↓ 1 callersFunction_join_links
(it: Dict[str, Any])
arxiv_tracker/sitegen.py:119
↓ 1 callersFunction_join_links
(it: Dict[str, Any])
arxiv_tracker/email_template.py:27
↓ 1 callersFunction_load_raw_cfg
(maybe_path)
arxiv_tracker/cli.py:37
↓ 1 callersFunction_loose_json_load
兼容旧名,等价 _json_loose。
arxiv_tracker/llm.py:25
↓ 1 callersFunction_norm_addr
(s: str)
arxiv_tracker/cli.py:58
↓ 1 callersFunction_normalize_chat_endpoint
允许三种写法: 1) https://api.xxx.com 2) https://api.xxx.com/v1 3) https://api.xxx.com/v1/chat/completions 统一规范到完整终点:.../v1/chat/c
arxiv_tracker/llm.py:29
↓ 1 callersFunction_quote
(term: str)
arxiv_tracker/query.py:7
↓ 1 callersFunction_render_card
(it: Dict[str, Any], t_zh: Optional[Dict[str, str]] = None, sum_zh: Optional
arxiv_tracker/email_template.py:53
↓ 1 callersFunction_sleep_backoff
指数退避 + 抖动。第 1 次失败等待 ~BASE_PAUSE, 之后 2^n 递增,并加 0~0.5 随机抖动,封顶 MAX_SLEEP。
arxiv_tracker/client.py:31
↓ 1 callersFunction_split_categories
(values)
arxiv_tracker/cli.py:17
↓ 1 callersFunctionaugment_item_links
返回本次新增的链接条数
arxiv_tracker/extrascrape.py:74
↓ 1 callersFunctionbuild_llm_prompt
(item: Dict[str, Any], lang: str = "zh", scope: str = "both")
arxiv_tracker/llm.py:137
↓ 1 callersFunctionbuild_two_stage_summary
兼容旧接口名,但现在输出: {"digest_en": "...", "digest_zh": "...", "tldr": "", "full_md": ""} 其中 tldr/full_md 留空,供模板判断“不渲染卡片”
arxiv_tracker/summarizer.py:101
↓ 1 callersFunctioncall_llm_bilingual_summary
让 LLM 直接输出两段“总结”:digest_en / digest_zh 内容要求:动机、方法、实验结果(各 1-2 句,合成两段:英文一段 + 中文一段) —— 统一 OpenAI 兼容通道,无需区分供应商。
arxiv_tracker/llm.py:85
↓ 1 callersFunctioncall_llm_translate
返回:{ title_zh?, summary_zh?, comments_zh? } —— 同一 OpenAI 兼容通道,按任意 base_url + api_key 工作。
arxiv_tracker/llm.py:207
↓ 1 callersFunctioncall_llm_two_stage
兼容你原先的“两阶段摘要”接口,内部改为统一 OpenAI 兼容通道。
arxiv_tracker/llm.py:167
↓ 1 callersFunctioncli
arxiv-tracker CLI
arxiv_tracker/cli.py:74
↓ 1 callersFunctionextract_urls
(text: str)
arxiv_tracker/extractors.py:95
↓ 1 callersFunctionextract_venue_info
(text: str)
arxiv_tracker/extractors.py:82
↓ 1 callersFunctiongenerate_site
(items: List[Dict[str,Any]], summaries_zh: Dict[str,Dict[str,str]], summar
arxiv_tracker/sitegen.py:268
↓ 1 callersFunctionmain
(time_str, config_path, out_dir)
arxiv_tracker/scheduler.py:26
↓ 1 callersFunctionmd_to_pdf
将 Markdown 文件转换为 PDF(基于 markdown -> HTML -> xhtml2pdf) 返回生成的 pdf 路径
arxiv_tracker/exporter.py:18
↓ 1 callersMethodmerge_cli
( self, categories=None, keywords=None, exclude_keywords=None, logic=N
arxiv_tracker/config.py:22
↓ 1 callersFunctionrender_email_html
( items: List[Dict[str, Any]], lang: str = "both", translations: Optional[Dict[str, Dict[str, str]
arxiv_tracker/email_template.py:105
↓ 1 callersFunctionsend_email
( sender: str, to_list: List[str], subject: str, html_body: str, smtp_server: str, smt
arxiv_tracker/mailer.py:38
Function_first_sentence
(text: str)
arxiv_tracker/sitegen.py:26
Function_has_cjk
(s: str)
arxiv_tracker/sitegen.py:23
Function_job
(cfg: Settings, out_dir: str)
arxiv_tracker/scheduler.py:11
Function_localize_md_to_zh
仅把标签本地化,内容不硬翻译(避免引入错误)。英文值保留。
arxiv_tracker/sitegen.py:47
Function_md2html
(md: str)
arxiv_tracker/sitegen.py:15
Function_md2html
(md: str)
arxiv_tracker/email_template.py:13
Function_strip_format
去掉冗余行:**Method Card...**, **Discussion...**, **Links**...
arxiv_tracker/sitegen.py:32
Function_strip_redundant_links
(md: str)
arxiv_tracker/sitegen.py:78
Function_strip_redundant_links
(md: str)
arxiv_tracker/email_template.py:19
Functionheuristic_two_stage
(item: Dict[str, Any], lang: str, scope: str)
arxiv_tracker/summarizer.py:51
Functionllm_two_stage
(item: Dict[str, Any], lang: str, scope: str, cfg: Dict[str, Any])
arxiv_tracker/summarizer.py:87
Functionrun
(config_path, categories, keywords, exclude_keywords, logic, max_results, sort_by, sort_order, lang, s
arxiv_tracker/cli.py:103