Как создать блог

(Ответов: 14, Просмотров: 3282)
Страница 1 из 2 12 Последняя
  1. Super Moderator Аватар для grazer
    • Регистрация: 03.09.2009
    • Сообщений: 5,201
    • Записей в дневнике: 83
    • Репутация: 2382
    • Webmoney BL: ?
    вопрос :

    мне нужно спарсить сценаристов с 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.

    как мне спарсить сценаристов ?
    Миниатюры blog.jpg  
    Домены, хостинг и VPS 10 лет доверяю REG.RU. Проблем нет.
    Пишу про SEO в 2025 в телеграме, подписывайтесь (cнг/бурж seo).
    • 0
  2. Гуру
    • Регистрация: 08.09.2009
    • Сообщений: 1,981
    • Записей в дневнике: 4
    • Репутация: 193
    Есть два пути – либо блог будет на бесплатном хостинге, либо на платном. У платного и бесплатного хостингов есть свои преимущества и недостатки.
    по моему есть один правильный путь - платный хостинг. Есть другой путь - неадекватный.

    grazer, советовать WP новичкам уже не модно Тем более что юзабельность, производительность, функциональность maxsite уже давно выше на пару ступень. Хоть палками меня бейте =)

    Вообще такая статья, оч. скудная. Можно было бы по каждому пункту дописать огромное количество материала, но вот только он уже давно написан. Нужно только поискать.

    к пункту Что делать после того, как блог создан нужно просто добавить ссылку на вот этот замечательный блог
    • 1
  3. Junior Member
    • Регистрация: 24.03.2010
    • Сообщений: 5
    • Репутация: 10
    mall, не скажи, вордпресс еще норм системка, у меня сайт на нем, и пока проблем особых небыло, плагин и виджетов выше крыши, тем бесплатных также, у меня сейчас с ним одна проблема- как на нем организовать файловый архив, но это в другой теме, ну а насчет платного хоста и говорить нечего, сейчас бесплатныйх норм нету, зато есть недорогие и хорошие хосты из платных
    • 0
  4. Опытный Аватар для PAOK
    • Регистрация: 17.03.2010
    • Сообщений: 262
    • Репутация: 22
    еще есть платные хостинги на которые надо в обычном порядке покупать домен, но там уже установлен WP. Такие хостинги обычно на порядок дешевле, но к ним отсутствует FTP доступ)
    • 0
  5. Super Moderator Аватар для grazer
    • Регистрация: 03.09.2009
    • Сообщений: 5,201
    • Записей в дневнике: 83
    • Репутация: 2382
    • Webmoney BL: ?
    Цитата Сообщение от mall Посмотреть сообщение
    по моему есть один правильный путь - платный хостинг. Есть другой путь - неадекватный.
    А вы как начинали, сразу с платного хостинга? На бесплатном очень даже неплохо можно потренироваться и в конце концов выяснить, есть ли желание заниматься блоггингом.
    Цитата Сообщение от mall Посмотреть сообщение
    grazer, советовать WP новичкам уже не модно Тем более что юзабельность, производительность, функциональность maxsite уже давно выше на пару ступень. Хоть палками меня бейте =)
    Не юзал макссайт, поэтому не могу прокомментировать.
    Цитата Сообщение от mall Посмотреть сообщение
    Вообще такая статья, оч. скудная. Можно было бы по каждому пункту дописать огромное количество материала, но вот только он уже давно написан. Нужно только поискать.
    Вот поэтому и не писал, потому что уже все давно написано. :)
    Домены, хостинг и VPS 10 лет доверяю REG.RU. Проблем нет.
    Пишу про SEO в 2025 в телеграме, подписывайтесь (cнг/бурж seo).
    • 0
  6. shows Аватар для mazder
    • Регистрация: 08.09.2009
    • Сообщений: 1,709
    • Репутация: 35
    Цитата Сообщение от grazer Посмотреть сообщение
    На бесплатном очень даже неплохо можно потренироваться и в конце концов выяснить, есть ли желание заниматься блоггингом.
    Тут самый трудный вопрос, когда же стоит переходить на свой хостинг либо остаться на прежнем?
    Многие начиная на бесплатной платформе потом плачутся...
    • 0
  7. Я из admitad :) Аватар для terehoff
    • Регистрация: 15.07.2009
    • Сообщений: 2,605
    • Записей в дневнике: 18
    • Репутация: 1150
    • Webmoney BL: ?
    c wordpress.com легко съехать, сделал дамп базы, скопипастил все файлы с плагинами и вперед на стандалоне, и всего делов
    Рассказываю, как зарабатывать в admitad, skype terehoff62
    Мой блог
    • 0
  8. shows Аватар для mazder
    • Регистрация: 08.09.2009
    • Сообщений: 1,709
    • Репутация: 35
    terehoff, а как быть с блогами например на blogger.com и прочими...

    Интересно почитать: блог Медведева.
    Последний раз редактировалось grazer; 03.04.2010 в 02:56.
    • 0
  9. Super Moderator Аватар для grazer
    • Регистрация: 03.09.2009
    • Сообщений: 5,201
    • Записей в дневнике: 83
    • Репутация: 2382
    • Webmoney BL: ?
    mazder, с любого бесплтаного хостинга, поддерживающиего дамп базы можно схехать на платный, заказав у программиста "конвертер".
    Домены, хостинг и VPS 10 лет доверяю REG.RU. Проблем нет.
    Пишу про SEO в 2025 в телеграме, подписывайтесь (cнг/бурж seo).
    • 0
  10. Senior Member Аватар для Anna Volkova
    • Регистрация: 25.12.2009
    • Сообщений: 436
    • Репутация: 31
    А мне одинаково нравятся и бесплатный blogspot и wordpress на платном хостинге. И там и там есть свои минусы и плюсы.
    • 1
Страница 1 из 2 12 Последняя

Похожие темы

Темы Раздел Ответов Последний пост
Как создать sitemap.xml ?
Поисковые системы 3 01.01.2010 16:07
Сколько стоит создать фирму?
Оффтоп и свободные темы 3 28.12.2009 23:48
Как создать свой хостинг
Партнерские программы 14 27.11.2009 23:07
Как создать базу пиаристых бэков
Прочее 14 11.09.2009 12:18

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

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

Информеры