Вывод результата в формате дампа SQL

Пресет Вывод результата в формате дампа SQL 1.0

Доступно владельцам лицензии
  • Автор темы Автор темы Support
  • Дата начала Дата начала

Support

Administrator
Команда форума
A-Parser Enterprise
В данной статье показан пример генерации файла дампа SQL, готового для импорта в базу данных. Для экранирования символов используется JS. Скрипт уже включен в пресет, поэтому нужна версия А-Парсера не ниже 1.1.457.
unEMZ.png

Код:
eyJwcmVzZXQiOiJTUUwgcmVzdWx0IiwidmFsdWUiOnsicHJlc2V0IjoiU1FMIHJl
c3VsdCIsInBhcnNlcnMiOltbIlNFOjpHb29nbGUiLCJUT1AgMTAgKyBBRyJdXSwi
cmVzdWx0c0Zvcm1hdCI6IlslIEZPUkVBQ0ggcDEuc2VycDtcblx0XCJJTlNFUlQg
SU5UTyBzZXJwIFZBTFVFUygnXCIgXyB0b29scy5qcy5TUUxfZXNjYXBlKHF1ZXJ5
KSBfIFwiJywgJ1wiO1xuXHR0b29scy5qcy5TUUxfZXNjYXBlKGxpbmspIF8gXCIn
LCAnXCI7XG5cdHRvb2xzLmpzLlNRTF9lc2NhcGUoYW5jaG9yKSBfIFwiJylcXG5c
IjtcbkVORCAlXSIsInJlc3VsdHNTYXZlVG8iOiJmaWxlIiwicmVzdWx0c0ZpbGVO
YW1lIjoiJGRhdGVmaWxlLmZvcm1hdCgpLnR4dCIsImFkZGl0aW9uYWxGb3JtYXRz
IjpbXSwicmVzdWx0c1VuaXF1ZSI6Im5vIiwicXVlcnlGb3JtYXQiOlsiJHF1ZXJ5
Il0sInVuaXF1ZVF1ZXJpZXMiOmZhbHNlLCJzYXZlRmFpbGVkUXVlcmllcyI6ZmFs
c2UsIml0ZXJhdG9yT3B0aW9ucyI6eyJvbkFsbExldmVscyI6ZmFsc2UsInF1ZXJ5
QnVpbGRlcnNBZnRlckl0ZXJhdG9yIjpmYWxzZSwicXVlcnlCdWlsZGVyc09uQWxs
TGV2ZWxzIjpmYWxzZX0sInJlc3VsdHNPcHRpb25zIjp7Im92ZXJ3cml0ZSI6ZmFs
c2V9LCJkb0xvZyI6Im5vIiwia2VlcFVuaXF1ZSI6Ik5vIiwibW9yZU9wdGlvbnMi
OnRydWUsInJlc3VsdHNQcmVwZW5kIjoiIiwicmVzdWx0c0FwcGVuZCI6IiIsInF1
ZXJ5QnVpbGRlcnMiOltdLCJyZXN1bHRzQnVpbGRlcnMiOlt7InNvdXJjZSI6WzAs
WyJzZXJwIiwiYW5jaG9yIl1dLCJ0eXBlIjoiZGVjb2RlSHRtbCIsImFycmF5Ijoi
c2VycCIsInRvIjoiYW5jaG9yIn0seyJzb3VyY2UiOlswLFsic2VycCIsImFuY2hv
ciJdXSwidHlwZSI6InJlbW92ZUh0bWwiLCJhcnJheSI6InNlcnAiLCJ0byI6ImFu
Y2hvciJ9XSwiY29uZmlnT3ZlcnJpZGVzIjpbXSwicnVuVGFza09uQ29tcGxldGUi
OiIiLCJ1c2VSZXN1bHRzRmlsZUFzUXVlcmllc0ZpbGUiOmZhbHNlLCJ0b29sc0pT
IjoiVG9vbHMucHJvdG90eXBlLlNRTF9lc2NhcGUgPSBmdW5jdGlvbihzdHIpIHtc
biAgICByZXR1cm4gc3RyLnJlcGxhY2UoL1tcXDBcXHgwOFxceDA5XFx4MWFcXG5c
XHJcIidcXFxcXFwlXS9nLCBmdW5jdGlvbiAoY2hhcikge1xuICAgICAgICBzd2l0
Y2ggKGNoYXIpIHtcbiAgICAgICAgICAgIGNhc2UgXCJcXDBcIjpcbiAgICAgICAg
ICAgICAgICByZXR1cm4gXCJcXFxcMFwiO1xuICAgICAgICAgICAgY2FzZSBcIlxc
eDA4XCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiXFxcXGJcIjtcbiAgICAg
ICAgICAgIGNhc2UgXCJcXHgwOVwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBc
IlxcXFx0XCI7XG4gICAgICAgICAgICBjYXNlIFwiXFx4MWFcIjpcbiAgICAgICAg
ICAgICAgICByZXR1cm4gXCJcXFxcelwiO1xuICAgICAgICAgICAgY2FzZSBcIlxc
blwiOlxuICAgICAgICAgICAgICAgIHJldHVybiBcIlxcXFxuXCI7XG4gICAgICAg
ICAgICBjYXNlIFwiXFxyXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiXFxc
XHJcIjtcbiAgICAgICAgICAgIGNhc2UgXCJcXFwiXCI6XG4gICAgICAgICAgICBj
YXNlIFwiJ1wiOlxuICAgICAgICAgICAgY2FzZSBcIlxcXFxcIjpcbiAgICAgICAg
ICAgIGNhc2UgXCIlXCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIFwiXFxcXFwi
K2NoYXI7XG4gICAgICAgIH1cbiAgICB9KTtcbn0ifSwicGFyc2Vyc0NvbmZQcmVz
ZXRzIjp7IlNFOjpHb29nbGUiOnsiVE9QIDEwICsgQUciOnsicXVlcnlmb3JtYXQi
OiIkcXVlcnkiLCJwYXJzZW5vdGZvdW5kIjp0cnVlLCJnbCI6IiIsInBhZ2Vjb3Vu
dCI6MSwiZG9fZ3ppcCI6dHJ1ZSwiZG9tYWluIjoid3d3Lmdvb2dsZS5jb20iLCJ0
aW1lb3V0IjoiNjAiLCJ1c2Vwcm94eSI6dHJ1ZSwiYW50aWdhdGVwcmVzZXQiOiJB
RyIsImV4dHJhcXVlcnkiOiIiLCJ1c2VzZXNzaW9ucyI6dHJ1ZSwibG9jYXRpb24i
OiIiLCJzZXJwdGltZSI6IiIsImxpbmtzcGVycGFnZSI6MTAsImZpbHRlciI6dHJ1
ZSwic2VycCI6IiIsInVzZWFudGlnYXRlIjp0cnVlLCJwcm94eXJldHJpZXMiOiIx
MCIsInJlcXVlc3RkZWxheSI6IjAiLCJwcm94eWJhbm5lZGNsZWFudXAiOiIzMDAi
LCJyYXdkYXRhIjpmYWxzZSwiZm9ybWF0cmVzdWx0IjoiJHNlcnAuZm9ybWF0KCck
bGlua1xcbicpIiwibHIiOiIiLCJtYXhfc2l6ZSI6IjIwNDgwMCJ9fX19
  • Для примера использован парсинг Google TOP10.
  • За вывод результата в нужном виде отвечает шаблон:
0TEDc.png
  • Скрипт для экранирования символов:
Код:
Tools.prototype.SQL_escape = function(str) {
    return str.replace(/[\0\x08\x09\x1a\n\r"'\\\%]/g, function (char) {
        switch (char) {
            case "\0":
                return "\\0";
            case "\x08":
                return "\\b";
            case "\x09":
                return "\\t";
            case "\x1a":
                return "\\z";
            case "\n":
                return "\\n";
            case "\r":
                return "\\r";
            case "\"":
            case "'":
            case "\\":
            case "%":
                return "\\"+char;
        }
    });
}

Пример результата:

INSERT INTO serp VALUES('тест', 'http://www.psychologies.ru/tests/', 'Психологические тесты. Пройти онлайн бесплатные ...')
INSERT INTO serp VALUES('тест', 'http://tests.kulichki.com/', 'Тесты. Психологические тесты онлайн. Пройдите тесты ...')
INSERT INTO serp VALUES('тест', 'http://www.elle.ru/tests/', 'Тесты онлайн: пройти психологические тесты бесплатно, без ...')
INSERT INTO serp VALUES('тест', 'http://testoteka.ukr.net/', 'Тесты от Тестотеки: психологические, тесты для мужчин и ...')
INSERT INTO serp VALUES('тест', 'http://testoteka.ukr.net/personality/', 'Тест о личности. Пройти тест личности. - Тесты - Ukr.net')
INSERT INTO serp VALUES('тест', 'http://testoteka.ukr.net/alltests/', 'Все тесты. Бесплатное on-line тестирование. - Ukr.net')
INSERT INTO serp VALUES('тест', 'https://www.google.com/search?q=\%D1\%82\%D0\%B5\%D1\%81\%D1\%82&hl=en&prmd=ivns&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwiX9KeF4djLAhVMvxQKHTI-AaMQsAQIQQ', 'Images for тест')
INSERT INTO serp VALUES('тест', 'https://www.16personalities.com/ru/test-lichnosti', 'Бесплатный тест личности | 16Personalities')
INSERT INTO serp VALUES('тест', 'http://test.tankionline.com/', 'Test Server - Tanki Online')
INSERT INTO serp VALUES('тест', 'http://ru.iq-test.cc/', 'IQ Test - Тест IQ на русском языке')
INSERT INTO serp VALUES('А-Парсер', 'http://a-parser.com/', 'A-Parser - парсер для профессионалов SEO')
INSERT INTO serp VALUES('А-Парсер', 'https://www.youtube.com/watch?v=58RSoNcdjEA', 'Урок 97 - Как парсить данные при помощи A-parser - YouTube')
INSERT INTO serp VALUES('А-Парсер', 'https://rucaptcha.com/software/view/a-parser---parser-dlya-professionalov-seo', 'A-Parser - продвинутый серверный и десктопный парсер для ...')
INSERT INTO serp VALUES('А-Парсер', 'http://zennolab.com/discussion/threads/a-parser-prodvinutyj-parser-poiskovyx-sistem-wordstat-youtube-suggest-pr-etc.8791/', 'A-Parser - продвинутый парсер поисковых систем, WordStat, YouTube ...')
INSERT INTO serp VALUES('А-Парсер', 'http://searchengines.guru/showthread.php?t=720568', 'A-Parser - продвинутый парсер ПС, Google Trust, Suggest, WordStat ...')
INSERT INTO serp VALUES('А-Парсер', 'http://www.topexpert.pro/open-seo-lessons/lesson-97.html', 'Урок 97 - Как парсить данные при помощи A-parser - ТопЭксперт')
INSERT INTO serp VALUES('А-Парсер', 'http://www.maultalk.com/topic141943.html?view=getlastpost', 'A-Parser - продвинутый парсер поисковых систем, WordStat ...')
INSERT INTO serp VALUES('\\o\'key\\', 'https://app.it.okstate.edu/okey/', 'OKey Account Services')
INSERT INTO serp VALUES('\\o\'key\\', 'https://app.it.okstate.edu/okey/index.php/module/Forgot/action/Index', 'Forgot your password? - OKey Account Services')
INSERT INTO serp VALUES('\\o\'key\\', 'https://app.it.okstate.edu/okey/index.php/module/Activate/action/Index', 'Activate your O-Key! - OKey Account Services')
INSERT INTO serp VALUES('\\o\'key\\', 'https://go.osuit.edu/computer_information_services/okey', 'Orange Key Account Services - OSU Institute of Technology')
INSERT INTO serp VALUES('\\o\'key\\', 'http://okeyinvestors.ru/', 'O\'KEY Investors | Investors (Main)')
INSERT INTO serp VALUES('\\o\'key\\', 'https://www.google.com/search?q=\%5Co\'key\%5C&hl=en&prmd=ivns&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwi1o7SL4djLAhVFAxoKHRkEDS8QsAQIMQ', 'Images for \\o\'key\\')
INSERT INTO serp VALUES('\\o\'key\\', 'http://www.osuokc.edu/onlineclass/pdf/okey_sis_flier.pdf', 'Activating Your O-Key Account If you cannot get into O-Key, SIS or ...')
INSERT INTO serp VALUES('\\o\'key\\', 'http://www.osuokc.edu/ecampus/pdf/Okey\%20Account\%20Services.pdf', '• Activating Your O-Key Account • Forgot Your Password? • Need to ...')
INSERT INTO serp VALUES('\\o\'key\\', 'http://www.okmarket.ru/', 'О\'КЕЙ')
INSERT INTO serp VALUES('\\o\'key\\', 'http://www.intesasanpaolo.com/servizi-multicanale/sicurezza.jsp', 'O-key di Intesa Sanpaolo: lo strumento di One Time Password ...')
 
Хороший пример! Как то в хотелках предлагал прямую запись в БД (MySQL и sqlite) но что то все промолчали =(
 
Как то в хотелках предлагал прямую запись в БД (MySQL и sqlite) но что то все промолчали =(
будет, но сама по себе запись в базу не интересна, гораздо интереснее связанный с этим функционал(insert or update, сортировка результатов, отображение в парсере вьюшек, какая то аналитика и графики)
 
будет, но сама по себе запись в базу не интересна, гораздо интереснее связанный с этим функционал(insert or update, сортировка результатов, отображение в парсере вьюшек, какая то аналитика и графики)
голосую за postgresql ;)
 
будет, но сама по себе запись в базу не интересна, гораздо интереснее связанный с этим функционал(insert or update, сортировка результатов, отображение в парсере вьюшек, какая то аналитика и графики)
Какой приоритет у задачи? В этом году стоит ожидать или нет?
 
Сделать бы так для sqlite.
Можно будет парсить апарсером на сервере а потом скармливать базу в ContentBox и генерить доры :)
 
Последнее редактирование:
PHP:
INSERT INTO serp VALUES('слово', 'https://en.wiktionary.org/wiki/\%D1\%81\%D0\%BB\%D0\%BE\%D0\%B2\%D0\%BE', 'слово - Wiktionary')
INSERT INTO serp VALUES('слово', 'https://ru.wikipedia.org/wiki/\%D0\%A1\%D0\%BB\%D0\%BE\%D0\%B2\%D0\%BE', 'Слово — Википедия')
INSERT INTO serp VALUES('слово', 'https://ru.wikipedia.org/wiki/\%D0\%A1\%D0\%BB\%D0\%BE\%D0\%B2\%D0\%BE_(\%D1\%84\%D0\%B8\%D0\%BB\%D1\%8C\%D0\%BC)', 'Слово (фильм) — Википедия')
INSERT INTO serp VALUES('слово', 'http://masterrussian.com/vocabulary/slovo_word.htm', 'How to say word in Russian - Translation and Examples - Word слово')
INSERT INTO serp VALUES('слово', 'https://www.youtube.com/watch?v=dpfTJrUF2Nk', 'СЛОВО - ВИКТОР СУХОРУКОВ - YouTube')
INSERT INTO serp VALUES('слово', 'https://www.google.com/search?q=\%D1\%81\%D0\%BB\%D0\%BE\%D0\%B2\%D0\%BE&num=100&hl=en&prmd=ivns&tbm=isch&tbo=u&source=univ&sa=X&ved=0ahUKEwiCxvHmuuHaAhWFFBQKHTh1AnkQsAQIOQ', 'Images for слово')

https://www.google.com/search?q=\%D...X&ved=0ahUKEwiCxvHmuuHaAhWFFBQKHTh1AnkQsAQIOQ
выводиться вот такая ссылка, где вместо слова - слово, такое \Ñ\ \Ð\»\Ð\¾\Ð\²\Ð\¾
Как сделать \Ñ\ \Ð\»\Ð\¾\Ð\²\Ð\¾, чтобы было слово?
 
Здравствуйте.
Проблемы с кодировкой. А как вы эти строки получаете ? Код пресета в личку сбросьте.
Telegram: @aparser2
Skype: Денис A-Parser Support
 
будет, но сама по себе запись в базу не интересна, гораздо интереснее связанный с этим функционал(insert or update, сортировка результатов, отображение в парсере вьюшек, какая то аналитика и графики)
Я так понимаю, с текущей реализацией через JS парсеры, не стоит уже ожидать работу с БД в виде сортировки, вьюшек, аналитики и графики? Или все таки будет это реализовываться?
 
Я так понимаю, с текущей реализацией через JS парсеры, не стоит уже ожидать работу с БД в виде сортировки, вьюшек, аналитики и графики? Или все таки будет это реализовываться?

думаю лучше не ожидать, а уже использовать то что доступно :)
 
Назад
Верх