我不知道perl的一个单一的东西,但从一个大的perl脚本,我设法得到相关的部分,并发出一个HTTP请求。所以,这个Perl代码完美地工作。编写Python代码相当于Perl代码
#!/usr/bin/perl -w
use strict;
use LWP::UserAgent;
use HTTP::Request::Common;
my $ua = new LWP::UserAgent;
my $request = "X-CTCH-PVer: 0000001\r\n";
my $method_url = "http://localhost:8088/ctasd/GetStatus";
my $response = $ua->request (POST $method_url,Content => $request);
my $data = $response->status_line . "\n";
print $data;
print $response->content;
上面的代码输出:
200 OK
X-CTCH-PVer: 0000001
从我的理解,它是做一个POST到与指定数据的URL。与此基础上,我的Python代码如下所示:
#!/usr/bin/python
import urllib
url = "http://localhost:8088/ctasd/GetStatus"
data = urllib.urlencode([("X-CTCH-PVer", "0000001")])
print urllib.urlopen(url, data).read()
但是,这将返回响应为:
X-CTCH-Error: Missing protocol header "X-CTCH-PVer"
请帮我在做一个Python等同的Perl代码。
这给404找不到。具有此API的程序真的很糟糕,因为它提供了错误信息,所以这个头文件错误可能是骗人的。 –