返回介绍

轮到你了

发布于 2024-01-28 22:01:16 字数 1551 浏览 0 评论 0 收藏 0

至此,你已知道如何从现有的HTML、XML、CSV或JSON文件中(甚至从纯文本中)提取有价值的数据,也了解了HTML和XML标签及其结构,能从数据中分离标签,并规范化字词(至少可以实现一定程度的规范化)。懂得这些后,你可以完成很多大项目了——当然你还需要一些耐心。现在让我们来做一些练习!

失效链接检测器*

编写一个程序,基于一个给定网页的URL,报出页面中失效链接的名称和地址。出于练习的目的,约定当使用urllib.request.urlopen()打开链接失败时,则认为链接失效。

维基百科矿工**

MediaWiki(一个维基百科项目8)提供了基于JSON的API,可以实现对维基百科数据和元数据的可编程访问。编写一个程序,报出标题为“Data science”的维基百科页面中使用频率最高的十个词干。

实现提示如下。

o 使用HTTP,而不是HTTPS。

o 阅读MediaWiki网站上的“simple example”,并将其作为程序的基础。

o 首先,按标题获取页面ID,然后按ID获取页面。

o 阅读JSON数据,留意不同层次的密钥:在写作本书时,答案具有六个层次的深度!

音乐流派分类器***

编写一个程序,使用维基百科计算不同的摇滚/流行音乐流派之间的语义相似性。从按类型9分类的主要音乐组的列表开始。(注意,列表是分层的,而且包含子类!)递归处理列表及其子列表,直到找出所有相关组(为了节省时间和流量,可以通过选取固定的子类别,例如英国摇滚类,实现对搜索的限制)。如果可能的话,对于每个发现的组,提取其类型。使用Jaccard相似性指数10作为语义相似性的度量:对于每一个类型组A和B,J(A,B)=|A∩B|/|A∪B|=|C|/(|A|+|B|-|C|),其中|A|、|B|分别是列出类型A、B的组的数量,|C|则是同时列出A和B的组的数量。将运行结果保存(pickle),以备将来使用。相信我,你不会愿意多次运行这个程序的!

顺便提一下,本程序计算出共有多少种类型以及最相关的类型是什么?

8www.mediawiki.org/wiki/API:Main_page

9en.wikipedia.org/wiki/Category:Rock_music_groups_by_genre

10en.wikipedia.org/wiki/Jaccard_index

哪些是女神?……第十个是Vor,她是如此聪明,没有什么可以瞒得了她。

——冰岛历史学家、诗人和政治家Snorri Sturluson

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文