好的,这基本上就是我想要做的:
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)。
好的,这基本上就是我想要做的:
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)。
提供重定向信息的urlopen
has 方法的结果。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)
做这个:
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。
与实际的编码问题无关。但是您可能想要使用AniDB 搜索数据而不是查询他们的网站。