使用api v3的web科学客户端。

wos的Python项目详细描述


说明

https://travis-ci.org/enricobacis/wos.svg?branch=master

科学网(以前是知识网)是一个基于在线订阅的 汤姆逊路透社维护的科学引文索引服务。

wos是一个python soap客户端(api和命令行工具),用于查询 WOS数据库,以便使用WWS访问从查询获取XML数据。

安装

包已上载到PyPI,因此您可以 使用pip安装软件包:

pip install wos

用法

您可以使用wos命令来查询Web of Science API。如果你想的话 访问需要使用高级api访问的数据,还必须 使用您的用户名和密码进行身份验证。

usage: wos [-h] [–close] [-l] [-u USER] [-p PASSWORD] [-s SID]
{query,doi,connect} …

Query the Web of Science.

positional arguments:
{query,doi,connect} sub-command help
query query the Web of Science. doi get the WOS ID from the DOI. connect connect and get an SID.
optional arguments:
-h, --helpshow this help message and exit
--closeClose session.
--proxy PROXYHTTP proxy
--timeout TIMEOUT
API timeout
-l, --liteWos Lite
-v, --verboseVerbose
authentication:

API credentials for premium access.

-u USER, –user USER -p PASSWORD, –password PASSWORD -s SID, –sid SID

您可以使用--lite参数(针对每个查询)使用wos lite api。

您还可以使用会话id(sid)进行身份验证。事实上,会议是 未被命令行实用程序关闭。示例:

$ wos --user JohnDoe --password 12345 connect
Authenticated using SID: ABCDEFGHIJKLM

$ wos --sid ABCDEFGHIJKLM query 'AU=Knuth Donald' -c1
Authenticated using SID: ABCDEFGHIJKLM
<?xml version="1.0" ?>
<records>
    <REC r_id_disclaimer="ResearcherID data provided by Thomson Reuters">
        <UID>WOS:000287850200007</UID>
        <static_data>
            <summary>
                <EWUID>
                    <WUID coll_id="WOS"/>
                    <edition value="WOS.SCI"/>
                </EWUID>
                <pub_info coverdate="MAR 2011" has_abstract="N" issue="1"
                          pubmonth="MAR" pubtype="Journal" pubyear="2011"
                          sortdate="2011-03-01" vol="33">
                    <page begin="33" end="45" page_count="13">33-45</page>
                </pub_info>
                <titles count="6">
                    <title type="source">MATHEMATICAL INTELLIGENCER</title>
....

$ wos --sid ABCDEFGHIJKLM doi '10.1007/s00283-010-9170-7'
10.1007/s00283-010-9170-7

查看user_query文档以了解如何创建查询字符串。

示例

显然,您也可以通过编程方式使用python客户机:

fromwosimportWosClientimportwos.utilswithWosClient('JohnDoe','12345')asclient:print(wos.utils.query(client,'AU=Knuth Donald'))

原料药

wos0.1.11+中,WosClient类可以访问以下api。

[常见问题解答]我无法连接…

我不是汤森路透的下属。该图书馆利用了汤森路透(thomson reuters)提供的一项付费服务,即web of science WWSapi(web services premium或lite)。这意味着你的机构必须为科学核心收集访问网络付费。对知识网/科学网的简单注册不允许您访问WWS API服务。

因此,如果接收到诸如No matches returned for UsernameNo matches returned for IP之类的错误,这些错误将由WWS API服务器直接抛出。这意味着库正在与服务器正确通信,但您没有访问web服务api的权限。我知道您可以从您的网络访问WOS网站,但网站访问和API访问(在本项目中使用)是两个独立的产品,网站访问并不意味着API访问,因为汤森路透将它们分开计费。这个项目不会刮网站(这将违反使用条款),但调用汤森路透提供的WWS API。因此这个项目对你没有任何帮助。

如果您认为这是一个错误,并且您应该有权访问这些服务,请首先与汤森路透支持部门联系,并验证您是否具有WWS访问权限。仅当您(1)向汤森路透(Thomson Reuters)技术支持部门确认您具有WWS访问权限时,才能打开问题;(2)确认您连接的网络正确。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Getting“类型不匹配:在实例化映射列表时,无法将ArrayList<HashMap<String,String>>转换为List<Map<String,String>>”   java如何将ArrayList传输到安卓中的其他活动?   使用bouncy castle作为加密提供程序和GCM、cipherOutputStream时使用java。close()似乎没有抛出invalidCipherTextException   将自定义库导出到可导入jar文件java   java如何在队列中使用异常   JAVA木卫一。FileNotFoundException。正在尝试传入参数[0]   java使用自定义构造函数将JsonNode转换为POJO   由于无限循环,java Netbeans自动生成的GUI未显示。。。但我需要那个环   运行时从另一个Java cosole应用程序运行Java控制台应用程序   java在安卓中播放彩信wmv视频   web服务在Java中创建和发送SOAP消息   ReactJS&Java:对飞行前请求的响应未通过访问控制检查   java如何在安卓中使用PRDownloader恢复下载文件?   java为什么openFd(文件名)不能使用字符串?