Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Разбить спам (https://forum.antichat.xyz/showthread.php?t=47842)

Новенький 29.08.2007 08:06

Разбить спам
 
Люди помогите plz , есть ли такая прога для разбива спам листа на нужное кол-во ? Если есть скажите название , а если не лень можно и выложить , буду благодарен ;)

Piflit 29.08.2007 10:50

думаю, можно обойтись простеньким скриптом. что конкретно надо?

n1†R0x 29.08.2007 10:53

В каком формате спам-лист? и как его надо разбить?
Можно скрипт написать без особого труда.

flipper 29.08.2007 17:22

Простенький скрипт написал за 10 минут...
Код:

#!/usr/bin/perl -w

#usage perl split.pl BigmailList 100000
# Writen by Flipper

open(FIL,"<$ARGV[0]");
@fil = <FIL>;
close(FIL);
$j = 1;
$i = 1;
$kol = $ARGV[1];
open (FO,">file$j.txt");
foreach $string(@fil) {
if ($i > $kol) {
    $j++;
    $i=1;
    close (FO);
    open (FO,">file$j.txt");
 }
print FO "$string";
$i++;
}
close (FO);


NOmeR1 29.08.2007 17:40

Цитата:

Сообщение от Новенький
Люди помогите plz , есть ли такая прога для разбива спам листа на нужное кол-во ? Если есть скажите название , а если не лень можно и выложить , буду благодарен ;)

Можно например сделать, чтобы мыла были только с mail.ru, а вообще, что конкретно надо?

n1†R0x 30.08.2007 21:46

Накатал тут скриптик на пхп, мало ли кому пригодится :)

Скрипт читает файл и разбивает его на несколько txt-файлов, размер указывается в параметре $spl (Count). Filename соответственно - имя файла-источника. Скрипт понимает любые текстовые файлы.

PHP код:

<?php
    
print "<title>Mail Splitter 1.0b</title>";
    
    function 
gui()
    {
            print 
"<table border='0' align='center' valign='top' width='802' height='600'>";
            print 
"<tr width='800' height='600'><td width='400' heigth='600'>";
            print 
"<h3>File.mode</h3>";
            print 
"<h4>Plz enter the filename and size of each file below</h4>";
            print 
"<form method = 'post'>";
            print 
"Filename: <input type='text' name='filename' length='16' maxlength='20'/><br/>";
            print 
"Count: &nbsp&nbsp&nbsp <input type='text' name='spl' length='16' maxlength='5'/><br/>";
            print 
"<input type='submit' name='go' value='Отправить'/></form><br/><br/>";
            print 
"</td>";
    }
    
    function 
filemode($filename$split)
    {
        
$source file($filename) or die ("lol");
        
$name explode(".",$filename);
        
$size count($source);
        
$files intval($size $split);
        if (
$files == 0) die("The count is too big");
        for (
$i 0$i<$size$i++)
        {
            if (
$i $split == 0)
            {
                if (isset(
$handle)) fclose($handle);
                isset(
$sub) ? $sub++ : $sub 1;
                
$fname $name[0].".part".$sub.".txt";
                
$handle fopen($fname,"w+");
            }
        
fwrite($handle$source[$i]);
        
fwrite($handle"\n");
        }
    }
    
    if (isset(
$_POST['filename']) && isset($_POST['spl']))
    {
        
$split $_POST['spl'];
        
$filename $_POST['filename'];
        
filemode($filename$split);
        
    }
    else 
gui();
?>

ps: о наличии особо кривых моментов прошу сообщить))
pps: функции для наглядности, мало ли захочется куда-то скопировать.

Фещ 30.08.2007 21:48

придумал бы кто нибудь скрипт чтобы он всем спамерам головы бы разбил!
сори за оффтоп) просто крик души

Новенький 31.08.2007 01:28

Надо разбить базу спама на 10 милл.(txt) по 30 тыс . (txt) . Все кто помог , большое спасибо :cool:

C!klodoL 31.08.2007 07:29

Код:

#!/usr/bin/perl

open (base, "<base.txt") || die "Error";

while (<base>) {
    push @mas, $_;
    if ( @mas == 30000 ) {
        open (file, ">part ".$count++." .txt") || die "Error";
        print file @mas;
        close file;
        @mas=();
    }
}



Время: 11:26