科技是第一生产力!我是如何为超过10000个药品自动增加化学式结构图? 原
近期帮朋友使用Joomla改版公司的网站。朋友的公司是做化学产品的,整体的设计要求都比较常规,唯独到最后需要给每一个化学品增加结构式图遇到了问题。他们大概有超过10000种产品。之前网站上的结构式图是人手工做的(其中部分是从互联网上截图的),且图片的质量很差,无法继续使用需求。
问题
现在需要为超过10000种产品增加化学式结构图,并且如果采用手工来做,对于公司规定的上线时间上肯定是赶不及了。虽然说行业有类似的软件,但价格昂贵,在经费上是完全不能接受的。如何在短时间内解决这个问题?
解决方案
当我第一次面对这种问题,心里就想采用蛮力来做是肯定不行的,即使时间允许也不行,将时间花在这种大量重复性的工作是不值得的,一定会有更好的方案。
- 1,寻找开源库
- 2,能否使用技术手段增强原先图片的质量
- 3,在互联网自动抓取
对于第一种方案,使用google搜索了1个多小时,发现并没有能够满足要求的开源php库(看来这可能是一个未被开垦之地,是一个创业机会)。
对于第二种方案,虽然通过对图片的放大,能够自动生成大格式的图片,但图片显示的效果依然很差。(这个主要是原始图片质量的问题)
最后只剩下第三个方案。经过和朋友进一步的了解,发现它们行业有一个综合性的门户网站,可以在这个网站上查找到每一个CAS号对应的产品结构式。我立即意识到这就是我们需要的解决方案。一个构想立即出现——通过模拟查询,将对应的CAS药品结构式图片下载下来。
操作步骤
通过分析,发现是可以使用CURL模拟请求页面的,将CAS号作为参数,就可以请求包含不同CAS产品结构式的图片了。具体的编码过程并不复杂,再次就略过了。
自动获取药品结构式脚本截图:
感悟
当我将写好的脚本给朋友看的时候,他非常的吃惊,原本他们需要至少2个星期才能完成的工作,居然我只用了几个小时就搞定了。并且生成的图片质量比人手工做的更好。顿时对程序员的职业充满了敬佩之感。
对于这样的一件事情,对我也有不少的触动。作为一个职业程序员,当自己的代码能够帮助别人解决问题的时候,这种感觉真是太爽了。这种成就感,能够让枯燥的工作变得有些颜色。
实际上,在生活中,类似这种事情非常的多,当你遇到需要大量重复性的做某一项工作之前,你可以咨询一下你的程序员朋友(如果没有,也可以咨询一下我),看看他们能否给出什么建议,也许你认为需要十天半个月才能完成的工作,在程序员眼里可能就是一盏茶的功夫。这在这个技术爆炸的时代并不是什么异想天开的事情。你需要找到对的人!