发送请求到一个页面
问题描述:
答
在Python中,您可以使用机械化库(http://wwwsearch.sourceforge.net/mechanize/)。这很简单,你不需要很好地了解Python就可以使用它。
简单的例子(填写登录表单):
br = Browser()
br.open(login_link)
br.select_form(name="login")
br["email"] = "[email protected]"
br["pass"] = "password"
br.submit()
答
您可以使用Apache http client发送到网站的请求。
看看有问题的页面的来源,你会找到该部分。这包含需要发送到服务器的所有字段。特别是,你会发现它需要作为Post发送,而不是更常见的Get。上面的链接显示了如何使用http客户端代码进行发布。
你需要为每个域的NameValuePair形式,如这些的:
<input type="hidden" name="rm" value="lalign_x"/>
<input type="checkbox" name="show_ident" value="1" />
<textarea name="query" rows="6" cols="60">
它可能会采取一些试验和错误,你得到正确设置的所有字段。我建议用小数据集来做这件事。一旦这一切似乎工作,然后尝试用更大的数据。
我认为,“web开发”标签是无关的。 – Dmitry 2010-03-15 22:02:39
该网站提供下载链接,以便您可以在本地运行它。你检查过了吗? http://fasta.bioch.virginia.edu/fasta_www2/fasta_down.shtml我(可能是有问题的网站的维护者)会喜欢它在webrobot之上。 – BalusC 2010-03-15 22:06:59