<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Парсер реестра с сайта Роскомнадзора</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html</link>
    <description>#!/usr/local/bin/perl&lt;br&gt;use XML::DOM;&lt;br&gt;my $parser= XML::DOM::Parser-&amp;gt;new();&lt;br&gt;my $doc = $parser-&amp;gt;parsefile (&quot;dump.xml&quot;); # Дамп реестра&lt;br&gt;my $root = $doc-&amp;gt;getDocumentElement();&lt;br&gt;&#064;nodes =$doc-&amp;gt;getElementsByTagName(&quot;domain&quot;);&lt;br&gt;open(f2 ,&quot;+&amp;gt;result.txt&quot;) or die &quot;ERROR: $!&#092;n&quot;; &lt;br&gt;foreach my $nod (&#064;nodes) &#123;&lt;br&gt;    my $gtr = $nod-&amp;gt;getFirstChild()-&amp;gt;getData();&lt;br&gt;    print f2 &quot;$gtr&#092;n&quot;;&lt;br&gt;&#125;;&lt;br&gt;&lt;br&gt;Вывод в файл result.txt&lt;br&gt;</description>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (Антон)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#14</link>
    <pubDate>Fri, 28 Apr 2017 19:25:26 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; close LOGFILE; &lt;br&gt;&amp;gt; exit $update; &lt;br&gt;&amp;gt; &#091;/code&#093; &lt;br&gt;&amp;gt; Запускается он вот такой строчкой в /etc/crontab &lt;br&gt;&amp;gt; &#091;code&#093; &lt;br&gt;&amp;gt; */5 * * * * root if /root/bin/vigruzki.update.pl company; then service squid &lt;br&gt;&amp;gt; reload; service dnsmasq reload; fi &lt;br&gt;&amp;gt; &#091;/code&#093; &lt;br&gt;&amp;gt; Пришлось писать для разных файлов тк разные юр лица и для каждого &lt;br&gt;&amp;gt; менять в скрипте даже значение переменной не сильно хотелось.&lt;br&gt;&lt;br&gt;Здравствуйте. Я в перле почти ничего не понимаю, поэтому прошу помощи.&lt;br&gt;Судя по скрипту Ip адреса парсятся все что есть в дампе, а как &lt;br&gt;можно переделать скрипт чтобы парсились только те IP, где в теге &amp;lt;content&amp;gt; стоит тип блокировки blockType=&quot;ip&quot; Заранее спасибо.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (dlyserg)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#13</link>
    <pubDate>Sat, 12 Dec 2015 20:12:49 GMT</pubDate>
    <description>&amp;gt; да нет там никаких проблем. могу помочь.&lt;br&gt;&lt;br&gt;благодарствую, поборол.&lt;br&gt;оказалось лучшие для сквида перекодировать урл обартно в utf8.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (Hammer)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#12</link>
    <pubDate>Thu, 03 Dec 2015 00:58:47 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt;&amp;gt; Если надо, могу выложить весь скрипт. Он довольно объемный оказался.&lt;br&gt;&amp;gt; Добрый день, натолкнулся на ваше решение, интересует момент со сквидом.&lt;br&gt;&amp;gt; Не возникло ли проблем с блокировкой сквидом распарсеных урлов?&lt;br&gt;&amp;gt; Часть из имеющихся в реестре ну никак не поддаются блокировке.&lt;br&gt;&amp;gt; такая беда например происходит с практически всеми урлами суицид-форума.&lt;br&gt;&amp;gt; заранее спасибо.&lt;br&gt;&lt;br&gt;да нет там никаких проблем. могу помочь.&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (dlyserg)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#11</link>
    <pubDate>Wed, 02 Dec 2015 23:57:07 GMT</pubDate>
    <description>&amp;gt;&amp;gt;&amp;gt; Если надо, могу выложить весь скрипт. Он довольно объемный оказался.&lt;br&gt;&lt;br&gt;Добрый день, натолкнулся на ваше решение, интересует момент со сквидом.&lt;br&gt;Не возникло ли проблем с блокировкой сквидом распарсеных урлов?&lt;br&gt;Часть из имеющихся в реестре ну никак не поддаются блокировке.&lt;br&gt;такая беда например происходит с практически всеми урлами суицид-форума.&lt;br&gt;заранее спасибо.&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (Hammer)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#10</link>
    <pubDate>Sun, 08 Jun 2014 02:31:53 GMT</pubDate>
    <description>&amp;gt;&#091;оверквотинг удален&#093;&lt;br&gt;&amp;gt; use XML::Simple; &lt;br&gt;&amp;gt; my $parser = XML::Simple-&amp;gt;new(); &lt;br&gt;&amp;gt; my $dom    = $parser-&amp;gt;XMLin(&apos;dump.xml&apos;) or die; &lt;br&gt;&amp;gt; open(FH, &quot;&amp;gt;&quot;, &quot;result4.txt&quot;) or die; &lt;br&gt;&amp;gt; foreach my $node (values &#037;&#123;$dom-&amp;gt;&#123;&apos;content&apos;&#125;&#125;) &#123; &lt;br&gt;&amp;gt;     print FH $node-&amp;gt;&#123;&apos;domain&apos;&#125;, &quot;&#092;n&quot;; &lt;br&gt;&amp;gt; &#125; &lt;br&gt;&amp;gt; close FH;&#091;/code&#093;От Twig ожидал большего. Зря.)) Хотя.., это же как из пушки &lt;br&gt;&amp;gt; по воробьям палить.&lt;br&gt;&amp;gt; А самый быстрый, можно сказать реактивный, оказался LibXML &lt;br&gt;&lt;br&gt;Спасибо! Дельный коммент. Мне что то и в голову не приходило пробовать разные варианты. Плюсую.&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (McLeod095)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#9</link>
    <pubDate>Fri, 06 Jun 2014 06:56:42 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Если надо, могу выложить весь скрипт. Он довольно объемный оказался.&lt;br&gt;&amp;gt;&amp;gt; Логика работы простая &lt;br&gt;&amp;gt;&amp;gt; проверяем список, если есть изменения то применяем их. Также 4 раза в &lt;br&gt;&amp;gt;&amp;gt; сутки производится обязательная закачка списка, что бы на той стороне видели &lt;br&gt;&amp;gt;&amp;gt; что скачивается регулярно.&lt;br&gt;&amp;gt; Выложи, может кому пригодится.&lt;br&gt;&lt;br&gt;Код не идеален, но вроде как работает и работает исправно &lt;br&gt;&#091;code&#093;&lt;br&gt;#!/usr/bin/env perl&lt;br&gt;#&lt;br&gt;&lt;br&gt;use warnings;&lt;br&gt;use strict;&lt;br&gt;use MIME::Base64;&lt;br&gt;use SOAP::Lite;&lt;br&gt;use Fcntl qw(:flock);&lt;br&gt;use Archive::Extract;&lt;br&gt;use XML::Simple;&lt;br&gt;use Data::Dumper;&lt;br&gt;use utf8;&lt;br&gt;use Encode;&lt;br&gt;binmode STDOUT, &quot;:utf8&quot;;&lt;br&gt;&lt;br&gt;use constant &#123;&lt;br&gt;NOTICE =&amp;gt; 0,&lt;br&gt;WARN =&amp;gt; 1,&lt;br&gt;ERROR =&amp;gt; 2,&lt;br&gt;DEBUG =&amp;gt; 3,&lt;br&gt;&#125;;&lt;br&gt;&lt;br&gt;# Отключаем буферизацию вывода&lt;br&gt;$&amp;#124;=1;&lt;br&gt;&lt;br&gt;# Название компании по которой делаем выгрузку, файлы должны иметь вид компания.req компания.sig&lt;br&gt;my $company = shift or die(&quot;Use script with parameters&#092;n&quot;);&lt;br&gt;my $requestFile = &quot;/root/bin/&quot; . $company . &quot;.req&quot;;&lt;br&gt;my $signatureFile = &quot;/root/bin/&quot; . $company .&quot;.sig&quot;;&lt;br&gt;my $registryFile =</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (михалыч)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#8</link>
    <pubDate>Thu, 05 Jun 2014 13:26:19 GMT</pubDate>
    <description>Потестил, тут, на досуге. Разными парсерами.&lt;br&gt;XML::DOM&#091;code&#093;#!/usr/bin/perl&lt;br&gt;&lt;br&gt;use strict;&lt;br&gt;use warnings;&lt;br&gt;use XML::DOM;&lt;br&gt;&lt;br&gt;my $parser = XML::DOM::Parser-&amp;gt;new();&lt;br&gt;my $dom    = $parser-&amp;gt;parsefile (&quot;dump.xml&quot;) or die;&lt;br&gt;&lt;br&gt;open(FH, &quot;&amp;gt;&quot;, &quot;result.txt&quot;) or die;&lt;br&gt;&lt;br&gt;my &#064;nodes = $dom-&amp;gt;getElementsByTagName(&quot;domain&quot;);&lt;br&gt;foreach my $node (&#064;nodes) &#123;&lt;br&gt;    print FH $node-&amp;gt;getFirstChild()-&amp;gt;getData(), &quot;&#092;n&quot;;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;close FH;&#091;/code&#093;XML::LibXML&#091;code&#093;#!/usr/bin/perl&lt;br&gt;&lt;br&gt;use strict;&lt;br&gt;use warnings;&lt;br&gt;use XML::LibXML;&lt;br&gt;&lt;br&gt;my $parser = XML::LibXML-&amp;gt;new();&lt;br&gt;my $dom    = $parser-&amp;gt;parse_file(&quot;dump.xml&quot;) or die;&lt;br&gt;&lt;br&gt;open(FH, &quot;&amp;gt;&quot;, &quot;result2.txt&quot;) or die;&lt;br&gt;&lt;br&gt;my &#064;nodes = $dom-&amp;gt;getElementsByTagName(&quot;domain&quot;);&lt;br&gt;foreach my $node (&#064;nodes) &#123;&lt;br&gt;    print FH $node-&amp;gt;firstChild()-&amp;gt;data, &quot;&#092;n&quot;;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;close FH;&#091;/code&#093;XML::Twig&#091;code&#093;#!/usr/bin/perl&lt;br&gt;&lt;br&gt;use strict;&lt;br&gt;use warnings;&lt;br&gt;use XML::Twig;&lt;br&gt;&lt;br&gt;my $parser = XML::Twig-&amp;gt;new();&lt;br&gt;my $dom    = $parser-&amp;gt;parsefile(&apos;dump.xml&apos;) or die;&lt;br&gt;&lt;br&gt;open(FH, &quot;&amp;gt;&quot;, &quot;result3.txt&quot;) or die;&lt;br&gt;&lt;br&gt;my &#064;nodes = $dom-&amp;gt;root-&amp;gt;children(&apos;content</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (Hammer)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#7</link>
    <pubDate>Thu, 05 Jun 2014 08:02:20 GMT</pubDate>
    <description>&amp;gt; Если надо, могу выложить весь скрипт. Он довольно объемный оказался.&lt;br&gt;&amp;gt; Логика работы простая &lt;br&gt;&amp;gt; проверяем список, если есть изменения то применяем их. Также 4 раза в &lt;br&gt;&amp;gt; сутки производится обязательная закачка списка, что бы на той стороне видели &lt;br&gt;&amp;gt; что скачивается регулярно.&lt;br&gt;&lt;br&gt;Выложи, может кому пригодится.&lt;br&gt;</description>
</item>

<item>
    <title>Парсер реестра с сайта Роскомнадзора (McLeod095)</title>
    <link>https://opennet.me/openforum/vsluhforumID1/95646.html#6</link>
    <pubDate>Thu, 05 Jun 2014 07:10:08 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Пришлось поставить поддержку кодировки cp1251 для Simple::XML &lt;br&gt;&amp;gt;&amp;gt; Возвращаем url в виде пригодном для записи в файл который кормится squid &lt;br&gt;&amp;gt;&amp;gt; у &lt;br&gt;&amp;gt;&amp;gt; domains аналогично только для блокировки по доменам &lt;br&gt;&amp;gt;&amp;gt; ips список ip адресов, у меня применяется для iptables+ipset &lt;br&gt;&amp;gt;&amp;gt; ну и blockDomains тоже список доменов которые вписываются в файл вида /etc/hosts &lt;br&gt;&amp;gt;&amp;gt; и кормится dnsmasq, пришлось так извратиться что бы не заниматься подделыванием &lt;br&gt;&amp;gt;&amp;gt; сертификатов на сквиде.&lt;br&gt;&amp;gt; Ну у нас это бинд кушает, потому и отбираю по &quot;domain&quot;, ip &lt;br&gt;&amp;gt; блокировать я считаю бессмысленным.&lt;br&gt;&lt;br&gt;Если надо, могу выложить весь скрипт. Он довольно объемный оказался.&lt;br&gt;Логика работы простая &lt;br&gt;проверяем список, если есть изменения то применяем их. Также 4 раза в сутки производится обязательная закачка списка, что бы на той стороне видели что скачивается регулярно.&lt;br&gt;</description>
</item>

</channel>
</rss>
