1

好的,这基本上就是我想要做的:

URL http://anidb.net/perl-bin/animedb.pl?show=animelist&adb.search="Cowboy Bebop"&do.search=search重定向到http://anidb.net/perl-bin/animedb.pl ?show=anime&aid=23

假设我想在 XML 文件中记下 ID(在该示例中为 23)。

4

3 回答 3

1

提供重定向信息的urlopenhas 方法的结果。geturl然后您可以使用正则表达式对其进行解析。

import urllib2
import re

url = 'http://anidb.net/perl-bin/animedb.pl?show=animelist&adb.search=%22Cowboy%20Bebop%22&do.search=search'
headers = {"User-agent": "Mozilla/5.0"}
request = urllib2.Request(url, None, headers)
result = urllib2.urlopen(request)
r =  re.search("aid=(\d+)", result.geturl())
print r.group(1)
于 2012-04-12T17:50:21.033 回答
0

做这个:

var uri = window.location.href
var params = uri.split("?")[1].split("&");

args = {};
for(var i=0; i<params.length; i++) {
    p = params[i].split("=");
    args[p[0]] = p[1];
}
alert(args['aid']);

[编辑:锯蟒标签]

因此,在 python 中,如果你有一个 URL,你可以非常相似地拆分它:

uri = "http://anidb.net/perl-bin/animedb.pl?show=anime&aid=23"
params = uri.split('?')[1].split('&')

args={}
for kv in params:
     p = kv.split('=')
     args[p[0]] = p[1]

但是同样,我不知道 python 在您的问题中发挥作用,因为似乎受到攻击的脚本是 perl。

于 2012-04-12T17:37:11.080 回答
0

与实际的编码问题无关。但是您可能想要使用AniDB 搜索数据而不是查询他们的网站。

于 2012-04-12T18:25:24.023 回答