数据挖掘 发表于 2013-5-30 23:25:24

根据cas号批量下载pubchem上的化合物

本帖最后由 数据挖掘 于 2017-4-19 15:35 编辑

根据cas号批量下载化合物,在cmd运行exe,出现使用说明。




#########################################
第二个附件针对改版的pubchem的

lrf1980 发表于 2015-7-19 20:23:03

Charleshen 发表于 2014-10-15 17:23
该死的SCIfinder,不能导出sdf格式啊

scifinder是可以导出sdf格式的。:)

数据挖掘 发表于 2014-10-15 21:18:18

准确率只能达到80%+,,因为有些cas号 pubchem会没有

Charleshen 发表于 2014-10-15 17:23:14

我靠。。。太感谢了。我还没看内容,但是我表示感谢!

浙医-中药筛选 发表于 2013-5-31 07:44:10

哈哈,好东西,先下了。谢谢数据挖掘。

霁风 发表于 2013-5-31 09:43:15

好东西,谢谢分享!

yaolab2012 发表于 2013-6-1 16:56:28

hao dong xi!

数据挖掘 发表于 2013-8-27 16:53:29

这个附近中的exe已经过期了,由于我当时使用的是试用版的perl2exe。
有需要的可以联系我。qq 744891290

数据挖掘 发表于 2013-10-30 20:44:59

#!/usr/bin/perl -w
use LWP::Simple;
use LWP::UserAgent;
use warnings;
use strict;



if(@ARGV !=6)
{
       
        print "USAGE(example): perl downcas.pl-infile f:/casid.txt -type 2Dor3D -outfolder f:/downcas\n";
#                                          0         1          2    3      4          5
}
else
{
        my $filepath=$ARGV;
        my $downcas=$ARGV;
        my $identy;
        if($ARGV=~/(\d)D/)
        {
                $identy=($1==3)?'3D':"";
                print "\n$identy\n";
        }
        else
{
                print "USAGE(example): perl downcas.pl-infile f:/casid.txt -type 2Dor3D -outfolder f:/downcas\n";
#
    exit 0;
               
        }
       
       
        print "$downcas\n";
        mkdir $downcas unless -d $filepath;
       
        my ($ua,$req,$res);        
        $ua = LWP::UserAgent->new;
       
        open FH, $filepath;
        while(my $id=<FH>)
        {
       
        chomp $id;
       
        $req= HTTP::Request->new(HEAD => 'http://www.ncbi.nlm.nih.gov/pccompound/?term='.$id);
        $res = $ua->request($req);
        $res->request()->uri()=~/(\d+)\s*$/;
       
        if($res->request()->uri()=~/cid\=(\d+)\s*$/)
        {
                my $savename=$downcas.$id.'_cid_'.$1.'.sdf';
               
                print "find $id and download it as $savename\n";
                my $newfile=$downcas.'/successdown.txt';
                open FG,">>$newfile";
                print FG "$idsavename: $savename\n";
               
                getstore("http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid=$1&disopt=${identy}SaveSDF",$savename);
       

        }
        else
        {
                print "can't find $id\n";       
                my $newfile=$downcas.'/faildown.txt';
                open FF,">>$newfile";
                print FF "$id \n ";               
        }
       
}

}
       


补一个Perl脚本

popelrain888 发表于 2014-5-3 12:11:23

谢谢分享脚本

数据挖掘 发表于 2014-5-10 16:41:13

准确率无法达到100% ,下载完了以后需要验证下
比如看看分子式 分子量是否合理

Charleshen 发表于 2014-10-15 17:23:36

该死的SCIfinder,不能导出sdf格式啊
页: [1] 2
查看完整版本: 根据cas号批量下载pubchem上的化合物