gpt4 book ai didi

python - 如何从存档中获取原始 URL。是使用 python 的短链接?

转载 作者:bug小助手 更新时间:2023-10-28 01:29:33 27 4
gpt4 key购买 nike

我想编写一个函数,它采用 archive.is(或 archive.foarchive.li >archive.today) 链接作为输入,并给出原始站点的 URL 作为输出。

例如,如果输入是 'http://archive.is/9mIro',那么我希望输出是 'http://www.dailytelegraph.com .au/news/nsw/australian-army-bans-male-recruits-to-get-female-numbers-up/news-story/69ee9dc1d4f8836e9cca7ca2e3e5680a'

如何在 python 中做到这一点?

最佳答案

是的,您的方法可能适用于另一个站点,但 archive.is 似乎可以保护他们的数据免受自动查询,当我尝试 curl, python (urllib2) 我收到错误 Empty reply来自服务器。你需要像 phantomjs 这样模仿真实浏览器的东西。而且我相信它只适用于少数查询,然后会显示验证码或给出错误。他们似乎也记录了 ip 地址,甚至 phantomjs 从尝试 curl 或 python 的同一台机器上得到错误。

下面是 phantomjs 代码:

var webPage = require('webpage');
var page = webPage.create();
var system = require('system');
var args = system.args;

page.settings.userAgent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.120 Safari/537.36';

function getOriginalUrl(shortUrl, cb) {
page.open(shortUrl, function(status) {
//console.log(status);
var url = page.evaluate(function(){
return document.querySelector('form input').value;
});
cb(url);
});
}

if (args.length > 1) {
getOriginalUrl(args[1],function(url){
console.log(url);
phantom.exit();
});
} else {
console.log('Pass url');
phantom.exit();
}

关于python - 如何从存档中获取原始 URL。是使用 python 的短链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48226104/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com