Почему wget не получает все страницы при зеркалировании этого сайта?

Почему wget не получает все страницы при зеркалировании этого сайта?

Я хочу полностью отразить следующий веб-сайт:http://tinaztitiz.com

Я использую следующую команду wget:

wget -m http://tinaztitiz.com

Веб-сайт представляет собой пользовательскую CMS и содержит множество страниц, имеющих следующий вид URL-адресов:

http://tinaztitiz.com/yazi.php?id=943
http://tinaztitiz.com/yazi.php?id=762

Странно, что wget получает некоторые из этих страниц, но не все. Интересно, в чем может быть причина?

Примечание: Ограничений, связанных с robots.txt, нет.

Обновлять:

Просматривая исходный код веб-сайта, я заметил, что страницы, которые не обнаружены и не просканированы wget, имеют общее свойство. Их якорные URL-адреса написаны следующей функцией javascript:

function yazilar()
{
var ab = '</a><br class=\"hide\" />';
var aa = '<a class=' + '\"nav sub\" href=\"kategori.php?id=';
var ac = '';

var arr = new Array();
arr[0] = '12\">'+ac+' Belâgat';
arr[1] = '15\">'+ac+' Bilim ve Teknoloji';
//...
maxi = 14;
for(i=0;i<maxi;i++) {
    a = aa + arr[i] + ab;
    document.writeln(a);
    }
}

Похоже, wget не может обнаружить теги привязки, которые генерируются динамически.

решение1

Javascript визуализируется браузером. wgetделает именно то, что должен делать, извлекая содержимое. Браузеры изначально делают то же самое. Они получают содержимое точно так, как вы написали выше. Но затем он визуализирует часть Javascriptи создает ссылки. wgetне может этого сделать. Так что нет, вы не можете получить ссылки, которые генерируются динамически, используя только wget. Вы можете попробовать что-то вродеPhantomJSхотя.

решение2

Как уже было сказано, wget не может генерировать страницы, которые используют клиентский код JavaScript. Если вы знаете основы программирования на Python, я бы рекомендовал использовать библиотеку PythonСкрепидля сканирования веб-сайта, вместе сСелен, который может использовать внешний браузер для генерации динамических страниц. Вы можете сделать все это с помощью небольшого количества кода Python. Смотрите, например Коллекция фрагментов кода.

Связанный контент