2011-03-16 55 views
3

我不确定我应该为此使用哪个模块。 我有> 100个文件需要提交到以下网页并检索结果。自动发送和接收来自HTML页面的数据

http://bip.weizmann.ac.il/oca-bin/lpccsu

这将是有益的,如果我能自动以某种方式将文件发送到

'<'input type="file" name="filename" size='30''>' 

变量的过程,然后接收返回的HTML,以便它可以使用正则表达式来处理。

感谢

编辑看到一个示例输出,设置单选按钮来CSU,并在“PDB项”文本框中输入1eo8

回答

2

@Anake这里有3个Python的包是用于检索和分析提供了一个解决方案:

从他们的网站:

美丽的汤解析什么,你给它,而d为你遍历树遍历的东西。你可以告诉它“查找所有链接”,或者“查找外部链接类的所有链接”,或者“查找所有与urls匹配的链接”foo.com“,或者”查找带有粗体文本的表格标题,然后给出我的文字。”在Python 1

有状态的纲领性网页浏览,安迪·莱斯特的Perl模块,之后2

Scrapy是一个快速的高层次的屏幕抓取和Web爬行框架,用来抓取网站和提取结构化数据它可以用于广泛的目的,从数据挖掘到监视和自动化测试。3

2

有几个方法可以做到这一点:

1 )Perl和LWP

use LWP::UserAgent; 
my $ua = new LWP::UserAgent; 

my $response 
= $ua->post('http://bip.weizmann.ac.il/oca-bin/lpccsu?9955', 
{ param1 => 'value1', 
param2 => 'value2', 
}); 

my $content = $response->content; 
// your regular expression code 

2)AutoHotkey的,其具有正则表达式和由该处理POST请求用户写入一个库,请参阅http://www.autohotkey.com/forum/topic33506.html

3)编写使用wget的--post数据和--post文件,管道它的一系列文件的批处理文件,并与您的favortite的脚本语言读取输出 参考:http://www.gnu.org/software/wget/manual/html_node/HTTP-Options.html

希望帮助

+0

这是perl,不是python。 – geoffspear 2011-03-16 18:01:32

+0

谢谢。不是我正在寻找的东西,但是LWP的建议让我看到了似乎与python等价的urllib。 – Anake 2011-03-16 19:22:49

+0

啊......对不起,我是新来的,没有看到python标签:) – addfasdf 2011-03-16 20:38:52