从安全数据表文件中提取化学数据

SDSParser的Python项目详细描述


![alt text](https://github.com/astepe/sds戋u parser/blob/master/logosample戋u bytailorbrands.jpg)


\sdsparser
sdsparser是一款基于浏览器的应用程序,用于从安全数据表文档中提取化学数据。sdsparser将无需通过阅读安全数据表来获取您关心的数据,从而加快您的数据输入过程。


要进行实时演示,请单击此处:[sdsparser](http://www.aristepe.com/projects/submit-sds)

Wnload and use:
*[费希尔科学](https://www.fishersci.com/store/msds?零件号=M2131&;产品描述=Met+异丁基+酮+CR+ACS+1L&;VendorID=VN00033897&;国家代码=美国语言=英语)
*[西格玛奥尔德里奇](https://www.sigma aldrich.com/msds/msds/displaymdspage.do?country=us&language=en&productnumber=p5958&brand=sigald&pageToToTourl=https%3a%2f%2fwww.sigmaldrich.com%2fcatalog%2fsearch%3fterm%3dclok%26接口%3dall%26n%3d0%26模式%3dmatch%2520partialmax%26lang%3den%26区域%3dus%26focus%3dcroduct)

为了数据输入的目的,需要从安全数据表中快速获取化学数据。每一个化学制造商的SDS的样式和结构都会有一点不同。通过添加一组新的正则表达式来匹配特定制造商使用的格式,可以很容易地更新sdsparser以读取新的制造商格式。


\tech/framework used
*[pdfminer](https://github.com/euske/pdfminer),这是一个从pdf文档中提取信息的工具。ments
*[pytesseract](https://pypi.org/project/pytesseract/),一个用于google的tesseract ocr

\不用担心,sds_u解析器会将扫描的文件识别为图像,并执行光学字符识别(ocr)来为您提取文本。


\how to install

`pip install sds parser`

\how to use
simply initialize`sdsparser` with an optional list of data field是否要提取(例如[制造商]、[闪点])到"请求密钥"关键字参数。有关要使用的正确密钥,请参见"configs.sdsregexes.request_keys"。如果未请求密钥,则将搜索所有可用的数据字段。

```
>;>t_keys=请求密钥)
```

一场火灾,
"NFPA_health",
"NFPA_reactivity",
"Sara_311",
"修订日期",
"物理状态",
"cas_编号",
]
``````

调用"parser.get_sds_data('path/to/exampleds.pdf'),并传递到SDS文档的路径以获取SDS数据。

```
>;>;sds_data=parser.get_sds_data('path/to/safetydatasheet.pdf')
````

`.get_sds_data`返回一个字典对象映射请求密钥名到其相应的匹配项

````
>;sds_data
{
‘制造商’:'sigma aldrich',
‘产品_名称':'十二烷基硫酸钠',
'闪点':'338 F',
'比重':'3.2',
'萨拉311':'未列出的数据'
'NFPA火灾':'无可用数据'
}
`````

>如果在SDS中未找到所请求数据类型的标题,`.get-sds-data'将返回字符串'd'ata未列出。
如果找到标题,但在标题下找不到数据,`.get-sds-data`将在终端中返回字符串"no data available"。

\sdsparser cli


````
path/to/sds/directory$sdsparser parse--闪点——比重
{fisher-1.pdf':{flash-point':'无可用数据',
'比重':'无可用数据',
'fisher-2.pdf':{flash-point':'无可用数据',
'比重':'无可用数据',
'fisher-3.pdf':{'f斜线":"无可用数据",
"特定重力":"1.84"},
"fisher-5.pdf":{"闪点":"无可用数据",
"特定重力":"无可用数据"}"
`````
`````
path/to/sds/directory$sdsparser parse--csv
path/to/sds/directory$CAT SDS_data.csv
费舍尔,数据未列出,无数据可用,无数据可用,1,0,0,/312危险分类参见第2节了解更多信息CWA(清洁水法案)未,2018年1月26日,粉末,数据未列出
费舍尔,"水杨酸,钠盐",无数据可用,(等等…)信息
```
$sdsparser--help
``
````或
`````
$sdsparser parse--help
````

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

推荐PyPI第三方库


热门话题
java将Eclipse中的“查找引用”限制为仅引用我的代码   向Mac Store提交应用程序时出现macos Java错误(不推荐使用API)   与jnpout32pkg/jnpout32reg的java并行端口通信   java是否将应用程序添加到电子邮件附件的内容提供商列表?   java如何关闭外部iframe src   java无法播放整个音频片段   java Android:更改活动的背景颜色(主视图)   Android上的java常量运行控制服务   java绝地武士团结果不等于redis llen   从go或java程序调用c有什么危险?   java如何摆脱OSGi捆绑包的属性,这些属性在相应的配置(“service.pid”等)中不存在?   intellij知道Gradle为什么要编译。java文件,但不创建我的。罐子   节点。js从客户端应用程序(ReactJs+NodeJs)向JavaWeb服务发出请求   限制大小字节[]Java 安卓   java检测传入请求的数据类型   eclipse如何转换一个。txt文件到。csv与Java?   将日期时间从SQLite解析为java时出错。SQL。时间戳   java有没有办法控制类在wildfly中部署的顺序