数据挖掘 发表于 2013-10-30 20:08:13

查询筛选化合物是否在国内买到的perl脚本

背景:
所筛选的小分子库不是商业库,筛完药以后,我们会得到打分比较靠前的化合物,这时候我们需要想办法购买。
chemical book上面有供应商的信息,是根据cas号查询的。
利用chemical book网站,化合物的cas号以及perl,告诉你那些化合物是买的到的。
脚本puravailable.pl

#!/usr/bin/perl -w

use strict;
use LWP::Simple;
#use Encode;
use utf8;
binmode(STDIN,':encoding(utf8)');
binmode(STDOUT,':encoding(utf8)');
binmode(STDERR,':encoding(utf8)');
#funciont: according the cas id to report the chemical is available in china
#usage:perl puravailable.pl -input cas.txt -output buy.txt
#author :Zhaoqiang Chen 744891290@qq.com

my $name;
my$baseurl='http://www.chemicalbook.com/Search.aspx?keyword=';
my $url;
if(@ARGV!=4)
{
$name="11006-56-7";




print '#usage:perl puravailable.pl -input cas.txt -output buy.txt';

$url="$baseurl"."$name";
#print $url;
my $content=get($url);

if($content=~/国内供应商(\(\d+\))/)
{
    print "example:11006-56-7 have";
    print $1;
    print " vendors in china,the details in chemical book\n";
}


print "\n";
}
else
{
open FH,$ARGV;
open FF,">>$ARGV";
while(<FH>)
{
    chomp($_);
    $name=$_;
       $url="$baseurl"."$name";
      my $content=get($url);

    if($content=~/国内供应商\((\d+)\)/)
   {
    print "$_have ";
    print $1;
    print " vendors in china,the details in chemical book\n";
      print FF "$_   ";
    print FF $1;
    print FF "\n";
   }
}

   

}


   





北京-构效 发表于 2013-10-31 08:47:19

你真是人才啊   这种事情都能用这么专业的东西解决

数据挖掘 发表于 2013-10-31 10:13:30

北京-构效 发表于 2013-10-31 08:47 static/image/common/back.gif
你真是人才啊   这种事情都能用这么专业的东西解决

雕虫小技,我不知道剔除排名靠前的化合物。

碧海蓝天 发表于 2013-10-31 17:35:42

{:soso_e179:}{:soso_e142:}

jhonsmith001 发表于 2015-8-2 11:00:47

膜拜,真是人才
页: [1]
查看完整版本: 查询筛选化合物是否在国内买到的perl脚本