整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

秀书架,赢新品|新春第一弹,书香盒子增高版的完美搭档来啦!

品来啦!

福利也来啦!

点击收听

书香盒子创始人宇红妈妈

与新品之间的趣事吧

Hello 各位书香妈妈们,转眼就快要到新春啦,悄悄告诉你们,最近书香盒子市场团队一直在为老用户们“密谋”新年福利呢

第一弹惊喜福利,今天就要揭晓啦!

家有书香盒子儿童书架增高版的宝妈们,是不是心心念念想要充分利用好三下层的囤书层呢?这不,书香盒子经过半年的用心设计和反复打磨,与书香盒子儿童书架增高版相配套的新品终于要亮相啦!

而且,这次我们准备要为书香妈妈们送礼,只要参与本次【秀书架,赢新品】活动,就有机会免费获得新品——书香盒子书架配套之绘本收纳盒!包邮到家哦!

新品先睹为快

早在很久前,就收到很多妈妈的反馈:

书香盒子儿童书架真的很能装,上三层展示书,下三层囤书,非常实用。不过如果有专用的配套收纳盒就更好了。

从那时起,书香盒子就一直在为书架的配套收纳作各种尝试,从最开始的纯手工编织筐,后来再推出环保布艺收纳筐,满足了很多妈妈们的需求。但是追求完美的书香盒子,总觉得没有最好,只有更好。直到这款 绘本收纳盒(马卡龙系列) 被研发出来,我们内部所有的妈妈员工看到这款收纳新品,都有同感:就是它了!

一个既能保持囤书干净整洁,又通透方便找书,孩子自己就能轻松取书的书架配套收纳盒,非它莫属。

其实一个真正灵活方便的收纳用品,

就是配套使用可以,

单独使用也非常实用。

小编就是打算单独使用,

特别节省空间,真心赞

常年囤书的人都知道,

假如没有防尘措施,书放久了都会蒙尘。

有了收纳盒,就可以有效防尘啦。

滑盖门的设计是从孩子的角度来考虑的,

书籍本身就有重量,

如果还要翻箱倒柜地找书

孩子吃力,妈妈也费劲。

有了滑盖门,告别取书烦恼。

材质的安全性,

永远是书香盒子产品的最严把关。

书香盒子儿童书架增高版的完美搭档,

书香盒子创始人宇红妈妈家里已经用上啦!

自己用着好,才是真的好。

马卡龙蓝色调,清雅大方

马卡龙粉色调,赏心悦目

书籍一目了然,拿放方便

SO,我们准备了50套(1套3个)绘本收纳盒

要送给一直支持信任书香盒子的妈妈们!

本文由书香盒子发布,原文来自:http://www.shuxianghezi.com/news/355.html

2015年,美国官方解密了一系列有关本·拉登的文件,其中最引人瞩目的,是美国国家情报总监办公室在其官网上列出的“本·拉登的书架”。曝光的这份阅读清单涉及书籍和其他材料400余种。

其中包含了已解密的书信等文档103份、公开发表的美国政府文件75份等。本文关注的重点,是如何分析已经解密的103份书信等文档。

——EarlGrey@编程派

在本文中,我们将学习如何分析PDF文档,并且利用AlchemyAPI来进行实体抽取分析,看看本·拉登在这些信件中最常提到的10个实体是什么。

01

什么是AlchemyAPI?

AlchemyAPI是IBM旗下的一家公司,具有深度学习的自然语言处理和图片识别技术,可利用人工智能分析理解网页、文档、电子邮件、微博等形式的内容。它还将同Google 一样的神经网络分析技术应用其中。

AlchemyAPI目前共提供了12个文本分析功能:实体抽取(entitiy extraction),情感分析,关键字抓取,概念标识,关系提取,分类识别,作者提取,语言识别,文本提取,微格式分析,订阅内容识别,数据连接等。

接下来,我们开始进行准备工作。

本文中的代码大部分来自automatingosint,我对源代码进行更新。目前的脚本支持Python 3。

2

安装依赖包

由于美国ODNI公开的本·拉登信件都是PDF格式的,因此我们首先必须要安装能够处理PDF文档的Python包。这里,我使用的是PyPDF2。我们通过pip包管理器进行安装:

pip install pypdf2

另外,你肯定不想一封一封地手动103封书信吧?!省时省力的办法就是写个脚本把这些文档都爬取下来。由于要访问网页和解析网页,我们选择使用两个常用的第三方库:requests和BeautifulSoup 4:

pip install requests beautifulsoup4

3

获取免费AlchemyAPI Key

AlchemyAPI有一个免费的基础服务包,每天的事务处理上限为1000次。在本文中,我们将使用他们的实体抽取服务来执行文本分析。

获取免费AlchemyAPI Key非常简单,只需要填写一个表单即可,输入自己的邮箱地址。

申请处理完成之后,你就可以在邮箱中看到发送给你的API Key了。

4

安装AlchemyAPI Python SDK

获得API Key之后,我们可以通过AlchemyAPI提供的Python SDK和HTTP REST接口调用其提供的文本分析服务。在本文中,我们选择安装SDK的方式。

PyPI上之前有AlchemyAPI包,但是后来移除了下载包,因此我们不能使用pip来安装,只能通过Git克隆Python SDK的代码库或是直接下载代码库:

git clone https://github.com/AlchemyAPI/alchemyapi_python.git

接下来,我们要把申请到的API Key与SDK关联起来。打开终端,进入SDK文件夹,然后按下面的示例执行alchemyapi.py文件:

cd alchemyapi_python python alchemyapi.py YOUR_API_KEY 
# 将YOUR_API_KEY替换成你收到的Key

为确保SDK正常安装,可以按照提示运行example.py查看演示程序:

python example.py

如果最后出现了下图的文字,就证明SDK安装正确,API Key也可以使用。

5

下载文档

然后就到了怎么自动将103份PDF文档下载到本地了。

我们可以写一个简单的Python脚本来完成这项工作,但是我选择把它封装在download_bld_documents这个函数里,因为我想把所有的代码都放在一个脚本里,这样大家就可以直接运行这个脚本,等待一段时间,就可以看到最后的结果了。

这个函数写的比较简单,但是已经能够满足我们的需求了。

def download_bld_documents: """Download Bin Laden's Declassified documents from ODNI.""" import os

import time

import requests

from bs4 import BeautifulSoup

# 创建一个名为“pdfs”的文件夹,用于保存所有下载的PDF文档。 try: os.mkdir("pdfs") except: pass

# 获取ODNI网站上有关本·拉登书架的网页,

# 将其交给Beautiful Soup,以进行HTML解析。 response = requests.get( "http://www.dni.gov/index.php/resources/bin-laden-bookshelf?start=1") if response.status_code == 200: html = BeautifulSoup(response.content) link_list =

# 从网页中第54个超链接开始,我们遍历所有的文档链接,

# 仅保留那些我们所需要的链接:即含有“pdf”但不包含“Arabic”

# 字样的链接。我们将满足要求的链接保存到列表`link_list`中。 for i in html.findAll("a")[54:]: if "pdf" in i['href'] and "Arabic" not in i.text: link_list.append("http://www.odni.gov%s" % i['href'])

# 接下来,我们遍历列表中所有的元素,

# 从原链接中获取PDF的文件名,

#然后从ODNI网站下载相应的文档。 for i in link_list: response = requests.get(i) file_name = i.split("/")[::-1][0] fd = open("pdfs/%s" % file_name, "wb") fd.write(response.content) fd.close time.sleep(1)

由于文件数量比较多,因此在最终执行脚本时,耗费在文件下载的时间可能会比较长。如果你从ODNI网站下载的速度非常慢,那么可以前往我的百度网盘下载,但是在最终执行时要对脚本做修改。只需要执行下文中的函数即可。

在微信号中,回复“laden”即可获得分享链接及提取码。

6

处理文档

下面,我们就可以正式对下载的PDF文档进行分析了。我们将要利用Alchemy API提供的强大工具,对这些PDF文档进行实体抽取(entitiy extraction)分析。通过实体分析,我们可以了解本·拉登在这些信件和文件中,谈到最多的人、地方或东西是什么。

所以,我们要一一打开这些PDF文件,从文档中提取所有的文本,然后将其提交至Alchemy进行分析处理。在处理每一个文档时,我们可以得到其中的实体数据,最后将所有文档的分析数据结合在一起,就可以得到出现频率最高的实体了。

我们将这部分代码封装在process_documents函数中:

def process_documents: """Process downloaded documents using AlchemyAPI.""" # 导入所需要的模块,包括我们安装的PyPDF2和AlchemyAPI。 import PyPDF2

import glob

import time

from collections import Counter

from alchemyapi import AlchemyAPI alchemyapi = AlchemyAPI # 初始化AlchemyAPI。 file_list = glob.glob("pdfs/*.pdf")

# 通过`glob`模块获取我们下载的所有PDF文件的文件名。 entities = {}

# 我们要使用`entities`字典来保存每个PDF文档的分析结果。 # 下面的for循环将遍历所有的PDF文件 for pdf_file in file_list: # read in the PDF print("[*] Parsing %s" % pdf_file) # 初始化一个PyPDF2对象,用于保存从PDF文档中提取的文本数据 pdf_obj = PyPDF2.PdfFileReader(open(pdf_file, "rb")) # 创建一个空字符串,用于后续构建这个PDF的全部文本数据 full_text = "" # 从每页中提取文本数据 for page in pdf_obj.pages: full_text += page.extractText # 接下来我们使用Alchemy API进行实体抽取 print("[*] Sending %d bytes to the Alchemy API" % len(full_text)) # 调用AlchemyAPI,并明确我们提交的是文本数据(第一个参数)

# 然后传入需要分析的文本,第三个参数代表禁用情感分析功能,

# 因为本文中我们只关注频率最��的实体。 response = alchemyapi.entities('text', full_text, {'sentiment': 0}) if response['status'] == 'OK': # 遍历返回的全部实体数据。

# Alchemy返回的每个实体中,都包含有`count`数据,

# 我们要确保在`entities`字典中,将所有相同实体的count相加 for entity in response['entities']: # add each entity to our master list if entity['text'] in entities: entities[entity['text']] += int(entity['count']) else: entities[entity['text']] = int(entity['count']) print("[*] Retrieved %d entities from %s" % (len(entities), pdf_file)) else: print("[!] Error receiving Alchemy response: %s" % response['statusInfo']) time.sleep(1) # 上面的循环执行结束,我们可以统计最常见的实体,

# 并把相关的结果打印出来了! entity_counter = Counter(entities) top_entities = entity_counter.most_common # 接下来就开始打印本·拉登提到次数最多的实体吧! for top_entity in top_entities[0:10]: # most_common returns a tuple (entity,count) print("%s => %d" % (top_entity[0], top_entity[1]))

微信阅读代码不方便的话,请点击阅读原文。

上面函数的最后,我们使用了Counter类来加载entities字典,并且很容易地就得出了最常见的实体。

7

快速执行数据分析

最后执行脚本时,一定要注意:要把脚本放在alchemyapi_python这个文件夹里。这是因为AlchemyAPI SDK并没有在Python的PATH上。

为了让大家少复制粘贴,我已经把相关的操作写在一个bash脚本里。大家下载脚本后修改API KEY即可。

curl https://raw.githubusercontent.com/bingjin/funscripts/master/laden/bld.sh --output bld.sh sh bld.sh

上图就是正在执行的脚本。想不想看看最终的分析结果?

我直接告诉你们就太没趣了,大家可以运行脚本自己看,等待的同时可以品尝一杯咖啡。当然,剧透也是有的:伊斯兰教先知穆罕默德居然才排第七!

你分析的结果是怎样的,留言告诉大家本·拉登提到次数最多的三个实体吧!

9

结语

本文中仅使用了AlchemyAPI的实体提取功能,其他诸如关键词分析、情感分析、图像分析等功能都没有涉及。大家可以在本文的基础上,进一步发挥自己的想象力,看看还能从本·拉登的书架中得到什么信息。

...

Python核心开发者:print为什么从语句变成了函数?

月17日,在安徽博物院文物科技保护中心纸质文物修复室,工作人员对古籍文物进行补全。新华社记者周牧摄

新华社记者刘亢、蒋芳

历经13年辛苦编撰,《江苏历代方志全书》近日在南京首发。这一全国体量最大的省域旧志整理工程,是我国对古籍保护利用重视程度不断提升的缩影。

习近平总书记不久前在中国人民大学考察时强调,要运用现代科技手段加强古籍典藏的保护修复和综合利用,深入挖掘古籍蕴含的哲学思想、人文精神、价值理念、道德规范,推动中华优秀传统文化创造性转化、创新性发展。

今年以来,“加强文物古籍保护利用和非物质文化遗产保护传承”首次被写入政府工作报告,中共中央办公厅、国务院办公厅还印发了《关于推进新时代古籍工作的意见》。新华社记者近期在多地调研,探寻古籍保护利用在新时代如何温“故”知“新”。

让沉寂的典籍“动”起来

走进陕西师范大学图书馆古籍阅览室,香樟木的味道让人宁心静气。打开书柜,一册册线装书籍排列整齐。

如今,借助数字化技术,随时随地查阅古籍早已不是难事。2016年9月,“中华古籍资源库”开通运行,累计发布古籍及特藏数字资源10万部(件),查阅近乎“零门槛”。

2021年以来,陕西师范大学历史文化学院研发了中文古籍光学字符识别(OCR)系统,点校整理古籍的效率大幅提高。

“从卷帙浩繁的古籍中找资料耗时耗力,最大程度发挥文献价值,数字化工作还要加快。”陕师大图书馆馆长沙武田教授说。

技术赋能,珍贵的不可再生文物不仅可以永驻云端,甚至可以“七十二变”。

一幅横向流动的《千里江山图》上,标注了“涑水”“濂溪”“玉山”等地名,数百个衣袂飘飘的儒生正在“赶路”。他们从一地挪到另一地的轨迹,代表其求学历程和所属学派。这是北京大学可视化与可视计算实验室学生马源等向首届“北京大学数字人文作品展”提交的展品——用JavaScript完成的H5习作,取名为“宋元学案传承可视化系统”。

“如果不是专业研究,几乎没人会有兴趣翻阅《宋元学案》这样的大部头。我们想通过类游戏界面,吸引年轻人了解古籍。”马源说。

技术赋能,古籍不仅能像游戏一样动起来,更能让研究者如虎添翼。

打开浙江大学“智慧古籍平台”,点击文中的陌生地名,地理定位立即跳出;点击年号、干支等传统纪年,对应的现代公历日期立即换算;遇到古代官职、典故及疑难词语,后台工具书随即关联、显示。

“智能技术支持下的古典文献研究,是未来古籍研究的重要方向之一。有助于培养跨学科人才,推动学术成果转化为大众共享的文化资源。”浙江大学中国古代文学与文化研究所徐永明教授介绍说。

让冷门绝学“热”出圈

纪录片《但是还有书籍》的热播,带火了南京图书馆的沈燮元老先生——一位99岁高龄,仍然每天要工作八九个小时的古籍版本目录学家。面对突如其来的“人气”,老先生一时还颇难适应。

沈燮元曾是《中国古籍善本目录》的子部主编,也是慧眼如炬的版本鉴定专家。在南图几十年,沈燮元采购数千种古籍善本,“镇馆之宝”十大珍品古籍中有两部都是他买回的。

如今,这位九旬老翁,仍在争分夺秒。不久前,沈燮元完成了八十多万字的《士礼居题跋》,这本书囊括了他从世界各地搜集到的800多个书影,以及新发现的数十则“黄跋”。接下来,他还要整理黄丕烈诗文集和年谱。

近年来,许多古籍研究者的事迹“火”起来。东巴文化研究院院长李德静抢救翻译并整理东巴古籍;国家图书馆的古籍修复专家杜伟生等人修复《永乐大典》;浙江大学敦煌学研究中心主任张涌泉将分散于世界各地的敦煌碎片残卷进行拼接、缀合。越来越多的年轻人也在抖音、B站等社交平台,围绕这些古籍展开二次创作,让冷门题材有了“破圈”的热度。

作为沈燮元的后辈,南图的年轻人也在创新。从2020年暑假起,该馆历史文献部馆员韩超、史星宇,把清代《随园食单》里的文字“翻译”成一道道活色生香的菜肴,梨炒鸡、猪里肉、蒋侍郎豆腐等等,吸引人们在线“催更”。

“吃货眼中的古籍别有魅力。”史星宇说,例如,南宋时期以菜蔬食谱为主的《山家清供》,适宜当下的轻食爱好者;清代《食宪鸿秘》中的食谱侧重养生,适合当下爱泡枸杞的“养生咖”。

古籍经典正引发新的关注,激荡着更多青年的灵感。

让千年古籍“典”亮未来

今年4月,住房和城乡建设部主办的“中国传统村落数字博物馆”上线,其中“高迁数字记忆”项目受到关注。

浙江省台州市仙居县高迁村是中国历史文化名村,历代书香传承。中国人民大学信息资源管理学院冯惠玲教授研究团队挖掘散落的家谱和地方志,编纂了10个具有中国传统价值观念的故事,围绕传统村落文化精神采集多媒体,构建了一个古村落文化的数字化全景。

“从平面阅读到数字空间阅读,传统文献学也要进行数字转型,借助各种媒介增强人们对文化的理解和感知。”中国人民大学数字人文教研室主任梁继红说。

面向未来,千年典藏承担新使命,面临新课题。

——培养更多跨界人才。

医学著作《本草纲目》至今仍是中医案头必备,百科全书《天工开物》被翻译成多种文字……中国古籍拥有庞大且复杂的知识体系,有丰富治理经验,也包含中药、养生、服饰、饮食等生活智慧。

“古籍研究、保护缺人才,更缺跨界人才。”北京大学古典文献学专业学生杜怡然等人建议,加快整合相关学科资源,打破研究壁垒,培养古籍事业的综合性人才。

——进一步打破资源封闭。

过去,不同典藏机构“井水不犯河水”。如今,古籍数字化、公共化不仅惠及社会,更能促进传承。

徐永明希望“智慧古籍平台”能改变古籍整理个体作业的范式,让世界各地的专业人士在线合作。“《全明诗》《全明文》这样浩大的工程,按传统模式,我们这一代人很难看到它完成,利用众包技术才有希望。”

——更大范围共享。

近年来,一批散落海外的中国古籍实现数字化回归。例如四川大学、中国国家图书馆、美国加州大学伯克利分校等机构合作开展“汉典重光”项目,首批即完成20万页古籍的数字化、公共化工作。

“不仅整理国故,而且古为今用,要让更多中国古籍走进大众视野,促进中华文化与世界文化交流互鉴。”陕西省古籍整理出版专家委员会主任周天游说。

来源: 新华每日电讯