Выбор читателей
 Файл robots.txt

Файл robots.txt

Leave review
Одним из этапов оптимизации сайта для поисковиков является составление файл...
Читать далее
Мои работы

Мои работы

Leave review
В свободное время я занимаюсь WEB-дизайном.Мои работы:ООО «МСЗ-МЕХАНИКА»,...
Читать далее
Правила форума (комментирования)

Правила форума (комментирования)

Leave review
В данном материале представлены правила использования форума сайта (написан...
Читать далее

Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу.

Рейтинг 5 (2 Голоса)

Немного предыстории. Как я уже рассказывал в предыдущем материале, со временем я пришел к тому, что неплохо было бы отойти от арендных ссылок, и перейти на так называемые "вечные" ссылки. Так, я познакомился и приобрел замечательную программу Хрумер (XRumer).

В данной статье я расскажу о том, как привести базу данных для программы Хрумер (XRumer) с ссылками к файлу с ссылками в виде доменов 2-го уровня. Домен второго уровня — это уникальный адрес сайта, который находится в определенной доменной зоне (.ru, .com, .info и так далее).

Программа XRumer осуществляет рассылку информации (обычно это ссылки, как анкорные, так и безанкорные, на продвигаемый сайт) по базе ссылок в виде текстового файла. Обычно в режиме постинга бывает нужно такую базу с ссылками вида:

https://kupisait.ru/contacts

привести к ссылкам на домены второго уровня, типа:

https://kupisait.ru

Такая операция бывает нужна при работе с базой для постинга.

В принципе, чтобы выполнить такую операцию, можно открыть файл с базой для XRumer в любом блокноте и вручную удалить лишнее окончание ссылки. Но, дело в том, что такие базы содержат множество таких ссылок, даже не сотни, а тысячи и миллионы таких ссылок. Это займет очень много времени.

Можно попытаться это сделать с помощью программы Notepad++, облегчив себе задачу. Для этого сначала придется избавиться от http:// и https:// во всех строках. Для этого открываете в Нотепаде из верхнего меню пункты «Правка» — «Заменить» (можно просто нажать на Ctrl+H). В верхнее поле вставляете http://, а нижнее оставляете пустым. Жмете на кнопку «Заменить все». Потом в верхнее поле вместо http:// вставляете https:// и опять жмете на эту же кнопку.

Следующей нашей задачей будет удалить в Notepad++ после определенного символа(первого слеша (/)) все, что там будет стоять. Для этого опять же жмете на Ctrl+H. Переходим в режим «Регулярные выражения» (внизу окна), вставляем в первое поле (/.+)$ (если вам нужно будет после другого символа все удалить, то вставьте его вместо слеша), второе поле «Заменить на» оставьте пустым и жмем на кнопочку «Заменить все».

Notepad++. Вид окна поиска для приведения к домену 2 уровня

Notepad++. Вид окна поиска для приведения к домену 2 уровня

Кое-где в конце остались слеши, поэтому опять клацнете по Ctrl+H, перейдите в обычный режим и вставьте в верхнее поле слеш, а в нижние — ничего. Ну и на кнопочку «Заменить все» нажмите. Получаем все ссылки типа:

kupisait.ru

В общем-то с поставленной задачей мы справились. Но это не очень удобно. Кроме того, здесь есть, как я думаю, один нюанс. Хрумер будет к сайту обращаться без указания протокола (http:// или https://). В итоге цель будет достигнута, но в данном случае будет затрачиваться немного больше времени. С одной стороны, оно незначительное. С другой стороны, при работе Хрумера с миллионом ссылок, оно будет значительным. А как известно, время - деньги. К тому же все эти манипуляции с Notepad++ не очень удобны.

Взвесив все за и против, я решил написать программу для приведения базы данных под Хрумер (XRumer) для постинга к базе с сылками, в виде домена второго уровня. В качестве языка программирования я выбрал VB.Net (2010 года), т.к. когда-то я увлекался программированием на Visual Basic и у меня на съемном диске уже была настроенная виртуальная машина с данной средой программирования. Я на скорую руку написал несложную программу и хочу ей поделиться. Используя ее Вы соглашаетесь с тем, что я не несу никакой ответственности за Ваши возможные риски. Перед тем, как будете обрабатывать файлы, делайте резервное копирование. Кроме того я выкладываю исходный код данной программы. Вы сами можете ее поправить под себя, как считаете нужным.

Скачать программу для обработки базы данных под постинг Хрумером Вы можете по данной ссылке. Программа заархивирована в формате .zip. Вам ее нужно скачать файл LinkProcessing.zip и разархивировать в каталог файлы архива. На текущей момент в архиве 2 файла. Работает программа в операционных системах Windows, с установленным Microsoft .NET Framework 3.5 и выше. Устанавливать программу не нужно. Достаточно запустить файл "Обработка ссылок.exe". Работает в Win 7 и Win 10. В остальных системах не проверял, но, думаю, что при наличие Microsoft .NET Framework будет работать и в более ранних ОС.

Так же я выкладываю исходный код данной программы, можете им пользоваться:

Imports System.IO
Public Class frmLink
    'Для определения положения в трее
    Private FormState As FormWindowState
    Private Sub Crypt_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        'Форма не должна отображаться в панели при сворачивании 
        'Самоучитель VB 2008; БХВ-Петербург; Стр. 198.
        Me.ShowInTaskbar = False
        NotifyIcon1.Visible = True
        NotifyIcon1.Text = "Обработка ссылок"
        Me.StartPosition = FormStartPosition.WindowsDefaultLocation
    End Sub
    Private Function FileSelect(Optional ByVal f As String = Nothing) As String
        'Диалог сохранения файла
        'Самоучитель VB 2008; БХВ-Петербург; Стр. 121.
        'Фильтр
        SaveFileDialog1.Filter = _
        "Files (*.txt)|*.txt|All files (*.*)|*.*"
        'Заголовок файла
        SaveFileDialog1.Title = "Сохранение файла"
        'Определяем существование файла
        SaveFileDialog1.DefaultExt = True
        'Запрос подтверждения при замене файла
        SaveFileDialog1.OverwritePrompt = False
        'Обзор в дирректории, указанной выше
        SaveFileDialog1.RestoreDirectory = True
        'Если указанный файл существует - отображаем его
        SaveFileDialog1.FileName = f
        'Добавляет расширение к имени файла
        SaveFileDialog1.AddExtension = True
        'Отображаем диалог выбора файла
        SaveFileDialog1.ShowDialog()
        'Отображаем путь к файлу и файл
        FileSelect = SaveFileDialog1.FileName
        'Очищаем компонент
        SaveFileDialog1.FileName = Nothing
    End Function
    Private Function FileOpen(Optional ByVal f As String = Nothing) As String
        'Диалог открытия файла
        'Самоучитель VB 2008; БХВ-Петербург; Стр. 121.
        'Фильтр
        OpenFileDialog1.Filter = _
        "Files (*.txt)|*.txt|All files (*.*)|*.*"
        'Заголовок файла
        OpenFileDialog1.Title = "Открытие файла"
        'Определяем существование файла
        OpenFileDialog1.DefaultExt = True
        'Проверка существования файла
        OpenFileDialog1.CheckFileExists = True
        'Запрещвем выбор нескольких файлов
        OpenFileDialog1.Multiselect = False
        'Обзор в дирректории, указанной выше
        OpenFileDialog1.RestoreDirectory = True
        'Если указанный файл существует - отображаем его
        OpenFileDialog1.FileName = f
        'Добавляет расширение к имени файла
        OpenFileDialog1.AddExtension = True
        'Отображаем диалог выбора файла
        OpenFileDialog1.ShowDialog()
        'Отображаем путь к файлу и файл
        FileOpen = OpenFileDialog1.FileName
        'Очищаем компонент
        OpenFileDialog1.FileName = Nothing
    End Function
    Private Sub lnkMail_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles lnkMail.LinkClicked
        'Рецепты программирования на Microsoft VB.NET; Мастеркласс; 2004; Стр. 667.
        Dim IE As New SHDocVw.InternetExplorer()
        IE.Navigate("mailto:[email protected]")
        lnkMail.LinkVisited = True
        IE.Quit()
    End Sub
    Private Sub lnkSayt_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles lnkSayt.LinkClicked
        'Рецепты программирования на Microsoft VB.NET; Мастеркласс; 2004; Стр. 667.
        Dim IE As New SHDocVw.InternetExplorer()
        IE.Navigate("https://kupisait.ru")
        IE.Visible = True
        lnkSayt.LinkVisited = True
    End Sub
    Private Sub NotifyIcon1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles NotifyIcon1.Click
        If Me.WindowState = FormWindowState.Minimized Then
            Me.Visible = True
            Me.WindowState = FormState
        Else
            Me.Visible = False
            Me.WindowState = FormWindowState.Minimized
        End If
    End Sub
    Private Sub frmLink_LocationChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LocationChanged
        If Me.Visible = False Then Return
        If Me.WindowState = FormWindowState.Minimized Then
            Me.Visible = False
        Else
            Me.Visible = True
        End If
        If Me.WindowState <> FormWindowState.Minimized Then
            FormState = Me.WindowState
        End If
    End Sub
    Private Sub cmdOpenFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdOpenFile.Click
        'Обзор файла
        Dim f As String
        f = FileOpen()
        If Trim(f) = "" Then
            Return
        End If
        'Заполняем поле исходного файла именем выбранного файла
        txtOpenFile.Text = f
        'Заполняем значение конечного файла
        txtFinishFile.Text = FileIO.FileSystem.GetFileInfo(f).DirectoryName & "" & IO.Path.GetFileNameWithoutExtension(f) & "_mod_" & FileIO.FileSystem.GetFileInfo(f).Extension
    End Sub
    Private Sub cmdFinishFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdFinishFile.Click
        'Обзор файла
        Dim f As String
        f = FileSelect()
        If Trim(f) = "" Then
            Return
        End If
        'Заполняем поле конечного файла именем выбранного файла
        txtFinishFile.Text = f
    End Sub
    Private Sub cmdRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdRun.Click
        Dim fileReader As System.IO.StreamReader
        Dim fileWriter As System.IO.StreamWriter
        If Trim(txtOpenFile.Text) = "" Or Trim(txtFinishFile.Text) = "" Then
            MsgBox("Укажите исходный и конечный файлы в соответствующие поля!", MsgBoxStyle.Exclamation)
            Exit Sub
        End If
        Try 'Обработка ошибок
            fileReader = My.Computer.FileSystem.OpenTextFileReader(txtOpenFile.Text)
            fileWriter = My.Computer.FileSystem.OpenTextFileWriter(txtFinishFile.Text, False)
            Dim stringReader As String
            Dim linenum As Integer = 0
            Dim n As Integer = 0
            While Not fileReader.EndOfStream()
                stringReader = fileReader.ReadLine()
                If InStr(stringReader, "https://") > 0 Then
                    n = InStr(9, stringReader, "/")
                ElseIf InStr(stringReader, "http://") > 0 Then
                    n = InStr(8, stringReader, "/")
                End If
                If n > 0 Then n = n - 1
                stringReader = Mid(stringReader, 1, n)
                If Len(stringReader) > 0 Then
                    fileWriter.WriteLine(stringReader)
                Else
                    fileWriter.WriteLine(fileReader.ReadLine())
                End If
                linenum = linenum + 1
                stringReader = ""
                n = 0
            End While
            fileReader.Close()
            fileWriter.Close()
            MsgBox(linenum & " строк обработано")
        Catch 'Обработка ошибок
            MsgBox("Укажите правильно исходный и конечный файлы в соответствующие поля! Исходный файл должен быть существующим!", MsgBoxStyle.Exclamation)
        End Try 'Обработка ошибок
    End Sub
End Class

Чтобы воспользоваться в проекте данным кодом, в среде разработки Вам понадобится форма frmLink. На ней нужно:

разместить кнопки: cmdOpenFile, cmdFinishFile, cmdRun;

разместить текстовые поля: txtOpenFile, txtFinishFile;

и разместить компоненты: SaveFileDialog1, OpenFileDialog1, ToolTip1, NotifyIcon1.

Внутри формы разместите код, указанный выше. Останется только скомпилировать проект.

На этом сегодня все, удачи!

Поделиться материалом

Навигация по страницам

Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта
Previous

Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта

Leave review
В данной статье будет рассмотрено влияние ссылок н...
Читать далее
Основание ПАО «МСЗ»
Далее

Основание ПАО «МСЗ»

Leave review
ООО «МСЗ-М» является дочерним предприятием ПАО «Ма...
Читать далее

Тэги материала

Комментарии

Последние новости

Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу.

Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу.

Leave review
Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу. ...
Читать далее
Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта

Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта

Leave review
В данной статье будет рассмотрено влияние ссылок на продвигаемый сайт и то,...
Читать далее
Что такое лендинг пейдж? Руководство для начинающих.

Лендинг

Leave review
Лендинг Landing Page (лендинг, посадочная страница) - автономный интернет-р...
Читать далее
Купи сайт

Купи сайт

Leave review
В зависимости от Ваших потребностей, возможностей и целей, Вы можете заказа...
Читать далее

Теги

Популярные материалы

 Файл robots.txt

Файл robots.txt

Leave review
Одним из этапов оптимизации сайта для поисковиков является составление файл...
Читать далее
Мои работы

Мои работы

Leave review
В свободное время я занимаюсь WEB-дизайном.Мои работы:ООО «МСЗ-МЕХАНИКА»,...
Читать далее
Правила форума (комментирования)

Правила форума (комментирования)

Leave review
В данном материале представлены правила использования форума сайта (написан...
Читать далее

Категории

Вам также может быть интересно

Последние новости

Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу.

Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу.

Leave review
Приведение ссылок к домену 2-го уровня. Здесь вы можете скачать программу. ...
Читать далее
Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта

Общие сведения о программе Хрумер (XRumer) и ссылочном продвижении сайта

Leave review
В данной статье будет рассмотрено влияние ссылок на продвигаемый сайт и то,...
Читать далее
Что такое лендинг пейдж? Руководство для начинающих.

Лендинг

Leave review
Лендинг Landing Page (лендинг, посадочная страница) - автономный интернет-р...
Читать далее
Купи сайт

Купи сайт

Leave review
В зависимости от Ваших потребностей, возможностей и целей, Вы можете заказа...
Читать далее

Теги

Популярные материалы

 Файл robots.txt

Файл robots.txt

Leave review
Одним из этапов оптимизации сайта для поисковиков является составление файл...
Читать далее
Мои работы

Мои работы

Leave review
В свободное время я занимаюсь WEB-дизайном.Мои работы:ООО «МСЗ-МЕХАНИКА»,...
Читать далее
Правила форума (комментирования)

Правила форума (комментирования)

Leave review
В данном материале представлены правила использования форума сайта (написан...
Читать далее

Категории