Доры и форумные подписи

(Ответов: 76, Просмотров: 8488)
Страница 1 из 8 123 Последняя
  1. Гуру Аватар для karbid
    • Регистрация: 06.09.2009
    • Сообщений: 2,236
    • Репутация: 90
    вопрос :

    мне нужно спарсить сценаристов с imdb.de

    актеров иа беру так:

    Код:
    ...
                'actors_links' => 'table.cast tr td.nm a',
                'actor_birthday' => 'h5:contains("Geburtstag") + div.info-content',
                'actor_death' => 'h5:contains("Todestag") + div.info-content',
                'actor_height' => 'h5:contains("GrцЯe") + div.info-content',
                'actor_nickname' => 'h5:contains("Spitzname") + div.info-content'
    ...
    private function get_actors(){
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_USERAGENT, USER_AGENT);
            curl_setopt($ch, CURLOPT_URL, BASE_PARSE_URL.$this->link.'fullcredits');
            curl_setopt($ch, CURLOPT_FAILONERROR, true);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            curl_setopt($ch, CURLOPT_AUTOREFERER, true);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 3);
    
            do{
    //            curl_setopt($ch, CURLOPT_PROXY, $this->get_random_proxy());
                $html = curl_exec($ch);
                $error = curl_errno($ch);
            }
            while($error!=0);
            curl_close($ch);
            if($html){
                $doc = phpQuery::newDocumentHTML($html);
                $actors_links = array();
    
                $actors_links_raw = $doc[$this->path['actors_links']];
                foreach ($actors_links_raw as $actors_link) {
                    //TODO:надо прикрутить проверку чтобы повторно не парсить
                    $actors_links[] = array(
                        'link' => $actors_link->getAttribute('href'),
                        'name' => $actors_link->nodeValue
                    );
                }
                $actors = array();
                foreach ($actors_links as $actor_link) {
                    $actors[] = $this->get_actor_info($actor_link);
                }
                $this->film['actors'] = $actors;
            }
        }
    
        private function get_actor_info($link){
            set_time_limit(0);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_USERAGENT, USER_AGENT);
            curl_setopt($ch, CURLOPT_URL, BASE_PARSE_URL.$link['link']);
            curl_setopt($ch, CURLOPT_FAILONERROR, true);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            curl_setopt($ch, CURLOPT_AUTOREFERER, true);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 3);
    
            do{
    //            curl_setopt($ch, CURLOPT_PROXY, $this->get_random_proxy());
                $html = curl_exec($ch);
                $error = curl_errno($ch);
            }
            while($error!=0);
            curl_close($ch);
    
            if($html){
                $actor_doc = phpQuery::newDocumentHTML($html);
    
                $actor = array();
    
                $actor['link'] = $link['link'];
                $actor['id'] = preg_replace('/[^0-9]/s', '', $link['link']);
    
                $actor['name'] = $link['name'];
                $birthday = pq($this->path['actor_birthday']);
                if($birthday->text()!=''){
                    $birthday = preg_replace('/\[(.*)?]/s', '', $birthday->text());
                    $birthday = explode(',', $birthday);
    //                получаем место рождения, в зависимости от указанных данных
                    if(count($birthday)>3){
                        $data = array(
                            'country' => trim($birthday[3]),
                            'state' => trim($birthday[2]),
                            'city' => trim($birthday[1]),
                            'birthday_date' => $birthday[0]
                        );
                    } elseif(count($birthday)==3) {
                        $data = array(
                            'country' => trim($birthday[2]),
                            'city' => trim($birthday[1]),
                            'birthday_date' => $birthday[0]
                        );
                    } elseif(count($birthday)==2){
                        $data = array(
                            'country' => trim($birthday[1]),
                            'birthday_date' => $birthday[0]
                        );
                    } elseif(count($birthday)==1){
                        $data = array(
                            'birthday_date' => $birthday[0]
                        );
                    }
    //                парсим дату рождения
                    $tmpDate = explode(' ', $data['birthday_date']);
                    foreach($tmpDate as $key=>$value){
                        $tmpDate[$key] = trim($value);
                    }
                    if(count ($tmpDate) == 3){
    //              день-месяц-год
                        $tmpDate[0] = str_replace('.', '', $tmpDate[0]);
                        $data['birthday_date'] = $tmpDate[2].'-'.get_month($tmpDate[1]).'-'.$tmpDate[0];
                    } elseif(count ($tmpDate) == 2) {
    //              месяц-год
                        $data['birthday_date'] = $tmpDate[1].'-'.get_month($tmpDate[0]).'-00';
                    } elseif(count ($tmpDate) == 1) {
    //              год
                        $data['birthday_date'] = $tmpDate[0].'-00-00';
                    }
                    $actor['birthday'] = $data;
                }
    
                $death = pq($this->path['actor_death']);
                if($death->text()!=''){
    //                дата смерти
                    $date = trim(preg_replace('/\,(.*)/s', '', $death->text()));
                    $tmpDate = explode(' ', $date);
                    foreach($tmpDate as $key=>$value){
                        $tmpDate[$key] = trim($value);
                    }
                    if(count ($tmpDate) == 3){
    //              день-месяц-год
                        $tmpDate[0] = str_replace('.', '', $tmpDate[0]);
                        $actor['death']  = $tmpDate[2].'-'.get_month($tmpDate[1]).'-'.$tmpDate[0];
                    } elseif(count ($tmpDate) == 2) {
    //              месяц-год
                        $actor['death'] = $tmpDate[1].'-'.get_month($tmpDate[0]).'-00';
                    } elseif(count ($tmpDate) == 1) {
    //              год
                        $actor['death'] = $tmpDate[0].'-00-00';
                    }
    
                }
                
                $height = pq($this->path['actor_height']);
                if($height->text()!=''){
                    $actor['height'] = trim(preg_replace('/[^0-9,]/s', '', $height->text()));
                }
    
                $nickname = pq($this->path['actor_nickname']);
                if($nickname->text()!=''){
                    $actor['nickname'] = trim($nickname->text());
                }
    
                return $actor;
            }
    но они находятся в fullcredits.

    как мне спарсить сценаристов ?
    • 0
  2. Опытный
    • Регистрация: 03.09.2009
    • Сообщений: 278
    • Репутация: 10
    я только так и делаю, спамлю по форумам хрумером под видом юзера , а в подписи мои линки , и модеры посты не стирают и страницы быстро индексируются
    • 0
  3. Гуру
    • Регистрация: 03.09.2009
    • Сообщений: 537
    • Репутация: 10
    стоящее дело.
    karbid, вроде? т.е. вы еще не пробовали?
    • 0
  4. Студент Аватар для Patologoanatom
    • Регистрация: 04.09.2009
    • Сообщений: 86
    • Репутация: 11
    Я делаю по другому, т.к. Хрумера у меня нет, то я регистрирую руками, в подпись ставлю что-то типа "всем привет" или в таком роде, пишу вменяемое, а через несколько дней возвращаюсь и исправляю подпись на свою ссылку.
    • 0
  5. Banned
    • Регистрация: 02.09.2009
    • Сообщений: 1,065
    • Репутация: 19
    Да что вы гоните) Зачем лишняя морока, потом заходить, сразу не ставить. Регнул акк, сделал там дор и спамишь его
    • 0
  6. Гуру Аватар для karbid
    • Регистрация: 06.09.2009
    • Сообщений: 2,236
    • Репутация: 90
    Цитата Сообщение от Mikuz Посмотреть сообщение
    стоящее дело.
    karbid, вроде? т.е. вы еще не пробовали?
    Не пробовал. Не слишком ли геморное это дело? 1000 форумов с открытыми подписями ещё поискать надо. А потом что, каждую подпись под новый дор переделывать после бана дора?

    По НЧ доры и так вылазят - так чего вроде и огород городить? Или я не прав и эффект действительно значительный?
    • 0
  7. Гуру Аватар для Dr.Gonzo
    • Регистрация: 03.09.2009
    • Сообщений: 1,503
    • Репутация: 64
    Цитата Сообщение от karbid Посмотреть сообщение
    А потом что, каждую подпись под новый дор переделывать после бана дора?
    Хрумер вроде делает это на автомате.
    • 0
  8. Гуру Аватар для karbid
    • Регистрация: 06.09.2009
    • Сообщений: 2,236
    • Репутация: 90
    Если уж спамить, то почему бы не проспамить простым постом в форуме вместо подписи?
    • 0
  9. Гуру Аватар для Dr.Gonzo
    • Регистрация: 03.09.2009
    • Сообщений: 1,503
    • Репутация: 64
    Цитата Сообщение от karbid Посмотреть сообщение
    Если уж спамить, то почему бы не проспамить простым постом в форуме вместо подписи?
    Потому что за такое бан(бан юзера на форуме) вероятнее схватить.
    • 0
  10. Гуру Аватар для karbid
    • Регистрация: 06.09.2009
    • Сообщений: 2,236
    • Репутация: 90
    Цитата Сообщение от Dr.Gonzo Посмотреть сообщение
    Потому что за такое бан(бан юзера на форуме) вероятнее схватить.
    Но хотя бы один пост-то всё равно нужно сделать.
    Тоесть схема такая: Первоначально спамится один пост, а потом хрумером постоянно меняются ему подписи.
    Примерно так это работает? Или просто в личке профиля прописываются подписи, а с профиля не делается ни одного поста?
    • 0
Страница 1 из 8 123 Последняя

Похожие темы

Темы Раздел Ответов Последний пост
Куплю место в подписи
Ссылки, статьи 55 29.01.2011 03:10
Продажа ссылки в подписи
Ссылки, статьи 4 11.03.2010 11:32
Продам места в подписи
Ссылки, статьи 8 01.03.2010 18:18
Продам место в подписи.
Ссылки, статьи 3 24.02.2010 18:13
Эксперимент — закладки, подписи, баннеры
Дайджест блогосферы 2 18.02.2010 18:57

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры