码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 使用C#/.NET解析Wiki百科数据实现获取历史上的今天


    创建一个webapi项目做测试使用。
    0
     
    创建新控制器,搭建一个基础框架,包括获取当天日期、wiki的请求地址等
    0
    创建一个Http请求帮助类以及方法,用于获取指定URL的信息
    0
     
    使用http请求访问指定url,先运行一下,看看返回的内容。内容如图右边所示,实际上是一个Json数据。我们主要解析 大事记 部分的内容,位于Json的revisions字段内
    0
    定义有关实体类,用于把收到的json数据转换为对象
    0
    根据转换的对象,可以看到对象内所有需要的内容,都在Content字段里面了。由于不知道是否存在多层结构,所以此处使用循环来遍历内容。先搭建个模子。
    0
     
    编写一个正则表达式,根据规律,可以识别出,每个词条都是以[]的形式存在,并且存在嵌套内容,所以做一个数据清理,清理嵌套抽重复的数据。
    0
    解析出来的新文本,看起来内容舒服一点了。然后我们只需要获取[[xx年]]的这些词行数据,所以可以继续做个数据清理,匹配正则表达式
    0
     
    根据匹配的正则表达式内容,做个遍历输出
    0
    查看输出的内容,可以看到已经被过滤成功了:
    0
    不过默认是繁体字,咱们再完善下,做成简体字。先安装一个古老的包:ChineseConverter 有提示不用管,能用。
    0
    然后直接调用即可:
    string simplifiedText = ChineseConverter.Convert(繁体中文字符串, ChineseConversionDirection.TraditionalToSimplified);
    然后重新跑一下,可以看到繁体变成了简体了。
    0
    最后,剩下的一些括号等符号,或者特殊字符,只需要做一个全局替换即可。以及如果需要解析其他内容,也可以自行再开发一个对应的正则表达式即可。
     
    如需以上源码,可在个人公众号【Dotnet Dancer】后台回复“历史上的今天” 即可获取以上源码。 
     
    欢迎加入QQ群: 群号:1079830632 WeskyNet交流群
  • 相关阅读:
    Web前端:编程讨论——React与Angular对比
    CoinGecko 播客:与 Cartesi 联合创始人 Erick 一起构建 Layer-2
    安卓Java面试题 91- 100
    Swift开发基础06-闭包
    鸡卵清白蛋白修饰黄素单核苷酸(FMN-OVA),Flavin Mononucleotide-Ovalbumin的保存条件
    flex布局与float布局
    怎么文字转语音真人发声?安利下面这三款软件
    正点原子STM32F103 DMA代码例程魔改
    ActiveMQ反序列化漏洞复现(CVE-2015-5254)
    2022年武汉市小微企业融资担保业务降费奖补标准和申报要求
  • 原文地址:https://www.cnblogs.com/weskynet/p/18307989
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号