wpull为每个warc文件创建多个唯一的捕获



我使用wpull获取客户站点并将其保存为WARC文件。

我遇到的问题是,出于某种原因,它正在创建多个网站捕获。有时它只做一次,但在其他情况下,它对同一网站的捕获范围从2到6到15次。我不认为捕获代码是真正的问题。。。

$argv[1] = 'example.com';
$command = 'wpull '.$argv[1].' --force-directories --warc-file '.$argv[1].' --no-check-certificate --no-robots --output-file '.$argv[1].'.log --no-check-certificate --no-robots --user-agent "Mozilla 2.2" --wait 0.5 --random-wait --waitretry 600 --page-requisites --recursive --span-hosts-allow linked-pages,page-requisites --escaped-fragment --strip-session-id --sitemaps --reject-regex "/login.php" --tries 3 --retry-connrefused --retry-dns-error --timeout 60 --delete-after -D '.$argv[1].' --max-redirect 10 --warc-cdx';
$response = shell_exec($command);

但我不知道(a)是什么让它获得多个捕获,或者(b)如何强迫它捕获一次。

我尝试过包含一个数据库文件以恢复关闭,以防内存问题,但这并没有什么区别,只是防止我连续进行多次拉取。

我的测试池由115个url组成,所以我可以忽略这可能是我正在提取的网站上的一个问题。

wpull的选项可以在这里找到:https://wpull.readthedocs.io/en/master/options.html

这里可以看到pywb的doc(显示内容)https://github.com/ikreymer/pywb

我有90%的把握这与wpull有关,但由于我是一个warc新手,我不会忽略这可能与将*.warc.gz文件添加到存档有关。

好的,在wpull中有一个奇怪的细微差别——递归。如果设置了,它将跟随任何和每个http://链接并进行完全拉取。添加-D site.com将限制这些拉入到指定的域。

然而,这创建了一个奇怪的场景,它将跟踪从同一域到同一域的每个http链接,并捕获它们。。。生成同一域的多个捕获。

递归标记不需要下拉整个url。只有当你想捕捉网站链接到的所有内容时。

最新更新