FAQ - ответы на частые вопросы

Работа программы

Что означает глубина парсинга?

Глубина - это необходимое количество кликов от главной страницы. Если до определенной страницы сайта можно добраться за 5 переходов по ссылкам, значит эта страница имеет глубину 5. В программе вы можете поставить ограничение на обход сайта по глубине.

С другой стороны, эта характеристика очень полезна с точки зрения оптимизации. Обычно все самые важные страницы сайта должны располагаться не глубже 3 уровня вложенности, чтобы хорошо ранжироваться. Так что если у вас важные страницы «запрятаны глубоко», вам есть над чем поработать на сайте в плане навигации и/или структуры.

А программа сможет просканировать сайт размером в 1 миллион страниц?

Да, программа готова сканировать сайты даже самых больших размеров. Главное, чтобы ваш компьютер технически был к этому готов.

Ради эксперимента мы сканировали известный сайт fl.ru, т.к. он имеет большое количество страниц и расположен на скоростных серверах. Программа работала около 10 часов и смогла сохранить 700 000 уникальных адресов, а расход памяти составил 1,7 ГБ. Эксперимент проводился на ноутбуке под ОС Windows 7 x64, с процессором Intel Core i7-3630QM и 8gb RAM.

Когда эксперимент прервали, в очереди на обход числилось еще более 2 миллионов страниц. Можно предположить, что программа готова к любым объемам и будет работать до тех пор, пока не израсходует всю память компьютера.

Запустил парсинг сайта, но сканирование идет очень медленно. От чего зависит скорость проверки?

В программе есть настройка количества потоков парсинга, т.е. сколько одновременно запросов к сайту может совершать программа. Разница между одним потоком и 5 потоками очень большая. Но, например, если вы выставите 50 потоков, вы не добьетесь увеличения в 50 раз.

Еще очень важной характеристикой является скорость ответа самого сервера, на котором расположен сайт. Чем больше потоков, тем медленнее будет отвечать сервер. Для некоторых сайтов ваш IP могут вообще заблокировать при большом количестве одновременных подключений. И имейте в виду, что при увеличении потоков, нагрузка на ЦП вашего компьютера линейно возрастает.

Остановил сканирование сайта, не дождавшись окончания. Как мне продолжить сканирование с того места, где я остановился?

Если вы прервали парсинг или загрузили уже существующий проект, который не был завершен до конца, вам не потребуется сканировать сайт заново, вы можете продолжить сбор новых страниц, отсутствующих в проекте. Для этого нажмите кнопку «Запустить», а на появившийся в диалоговом окне вопрос «Текущий проект уже содержит данные. Вы хотите их очистить перед началом?» нажмите «Нет». Через какое-то время программа начнет досбор данных.

Могу ли я отправить в программу для проверки xml-карту сайта?

Да, программа может просканировать только url страниц, обозначенных в xml-карте сайта. Данная возможность находится во вкладке «Краулер», пункт «Свой список», в выпадающем списке выбираете «XML карта сайта». Далее вам необходимо будет указать только адрес карты сайта.

Технические вопросы

При установке программа просит дополнительно установить .NET Framework версии 4.0. Скачиваю, устанавливаю, но все равно сообщение повторяется. В чем дело?

Такая ситуация бывает редко, и в этом случае может помочь установка автономного пакета вручную. Скачать Microsoft .NET Framework 4 (автономный установщик).

Нормально ли идет программа под Windows 8 (Windows Server)?

Программа должна работать в Windows 8 точно так же, как и под XP, Vista, 7. Если вдруг возникнут какие-то проблемы (был однажды случай), можно запустить в режиме совместимости с Windows 7 - это поможет.

Нашими пользователями так же проверена стабильная работа программы в Windows Server 2012 R2.

Можно ли запустить программу под MacOS?

Работа программы под операционными системами отличными от Windows не гарантируется, но, тем не менее, программа работает. Под MacOS программу можно запустить через виртуальную машину, на которой будет установлена Windows XP/7/8. Рекомендуется первоначальная установка Windows через встроенную утилиту Boot Camp, далее, после настройки ОС, необходимо установить и запустить саму программу. Убедившись, что все работает, можно запускать программу через виртуальную машину (рекомендуем VMware или Paralles Desktop).

Что если вы подключаетесь к интернету через прокси (например, корпоративная сеть на работе)?

Возможность такой работы через прокси не документирована, но она есть! Для этого в файле ComparseR.exe.config и Update.exe.config нужно добавить перед тегом </configuration>:

<system.net>
  <defaultProxy useDefaultCredentials="true" />
</system.net>

В этом случае для подключения программы будут использованы настройки по-умолчанию (обычно это настраивается в свойствах обозревателя Internet Explorer).

У меня возникает следующая ошибка в логе программы, это критично?

07:27:44 - Ошибка WebException (http://site.com/item-page.html): The server committed a protocol violation. Section=ResponseStatusLine
Трассировка: at System.Net.HttpWebRequest.GetResponse()
at Project.MainWindow.VxcJTmWaB7pGMIDGvj(Object )
at Project.MainWindow.QyIFsfUkGE(Object ) in G:\Freelance\free-lance.ru\ComparseR\Project\Crawler.cs:line 1464

Ошибка связана либо с прокси, либо с какой-то иной сетевой проблемой. Для возможного решения проблемы в файле ComparseR.exe.config нужно добавить перед тегом </configuration>:

<system.net>
  <settings>
  <WebRequest useUnsafeHeaderParsing="true" />
  </settings>
</system.net>