X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V   1 2 3 4 >
Открыть тему
Тема закрыта
> Парсер на php
denis_h2
denis_h2
Topic Starter сообщение 28.11.2011, 20:46; Ответить: denis_h2
Сообщение #1


Бывалый
****

Группа: User
Сообщений: 419
Регистрация: 16.3.2011
Поблагодарили: 40 раз
Репутация:   15  


Вот мой парсер:
$content_full = file_get_contents($url_full);

$r53 = preg_match_all ('/\<h1 align\=\"center\"\>(.*)<\/h1\>/Uis',$content_full,$tmp33);

echo "<h1>".$tmp33[1][0]." - ".$tmp33[1][1]."</h1>";
$title = $tmp33[1][0].' - '.$tmp33[1][1];


$start ="<p align=\"JUSTIFY\">";
$finih="<td width=\"100\" valign=\"top\">";

$obr=strpos($content_full,$start);
$content_full= substr($content_full,$obr);
$obr=strpos($content_full,$finih);
$content_full= substr($content_full,0,$obr);

$content_full = strip_tags($content_full, '<br>');

$content_full = str_replace("   ", "", $content_full);

//echo $content_full;

$ti = date("i")+$i;
if ($ti>59) {
$ti = rand (1, 59);
}

$today = date("Y-m-d H:$ti:s");



$sql = mysql_connect ($db_host,$db_user,$db_pas) or die (mysql_error());
mysql_select_db ($db_base) or die ("ошибка подключения");

$newStringBase = "INSERT INTO wp_posts (post_author,post_date,post_date_gmt,post_content,post_title,post_excerpt,pos
t_status,comment_status, ping_status,post_password,post_name,to_ping,pinged,post_modified,post_modified_g
mt,post_content_filte red,post_parent,guid,menu_order,post_type,post_mime_type,comment_count) VALUES
                                                 ('1','$today','$today','$content_full','$title','','publish','closed','closed','','$title','','','$today','$today','','0','','0','post','','0')";

$query = mysql_query($newStringBase);
if ($query==true) {
    echo "<h1 style='color:red;'>Данные отправлены !</h1>";
    } else {
    echo "<h1 style='color:red;'>Данные не отправлены !</h1>";
    echo mysql_error();
    }
mysql_close($sql);
}


Парсит он нормально, но данные в базе данных дублируются ! Почему ?
Есть какие нибудь ошибки ? Может есть предложение как улучшить его )

Сообщение отредактировал denis_h2 - 28.11.2011, 20:55
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
proXBOCT
proXBOCT
сообщение 28.11.2011, 20:57; Ответить: proXBOCT
Сообщение #2


PHP-писака
*****

Группа: Active User
Сообщений: 867
Регистрация: 20.4.2008
Из: Тольятти
Поблагодарили: 297 раз
Репутация:   47  


Не совсем понятен вопрос.
Если парсит он нормально, но появляются дубли в БД, значит вы парсите 2 раза одну и ту же страницу.
Не делайте этого или перед отправкой делайте проверку, что бы записи с таким же, например, заголовком в БД не было


--------------------


Поблагодарили: (2)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Светозар
Светозар
сообщение 28.11.2011, 21:02; Ответить: Светозар
Сообщение #3


Бывалый
****

Группа: User
Сообщений: 273
Регистрация: 22.8.2011
Из: Москва
Поблагодарили: 24 раза
Репутация:   3  


Интересная вариация граббера! Не против, если я немного видоизменю для своего скрипта, а потом для dle скрипта... Распространение будет бесплатно!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
denis_h2
denis_h2
Topic Starter сообщение 28.11.2011, 21:08; Ответить: denis_h2
Сообщение #4


Бывалый
****

Группа: User
Сообщений: 419
Регистрация: 16.3.2011
Поблагодарили: 40 раз
Репутация:   15  


proXBOCT, я понять немогу, где он второй раз парсится !
Весь излазил, нечего лишнего не нашёл !

Светозар, не против

Сообщение отредактировал denis_h2 - 28.11.2011, 21:09
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Светозар
Светозар
сообщение 28.11.2011, 21:09; Ответить: Светозар
Сообщение #5


Бывалый
****

Группа: User
Сообщений: 273
Регистрация: 22.8.2011
Из: Москва
Поблагодарили: 24 раза
Репутация:   3  


denis_h2, спасибо... А он перестаёт добавлять после двух копий, или продолжает заливать всё туже страничку в БД?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
proXBOCT
proXBOCT
сообщение 28.11.2011, 21:11; Ответить: proXBOCT
Сообщение #6


PHP-писака
*****

Группа: Active User
Сообщений: 867
Регистрация: 20.4.2008
Из: Тольятти
Поблагодарили: 297 раз
Репутация:   47  


Ну в самом парсере ошибки нет.
Значит нужно смотреть на скрипт, который заставляет его парсить


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Светозар
Светозар
сообщение 28.11.2011, 21:15; Ответить: Светозар
Сообщение #7


Бывалый
****

Группа: User
Сообщений: 273
Регистрация: 22.8.2011
Из: Москва
Поблагодарили: 24 раза
Репутация:   3  


его покажешь?

я пока в парсер не влезал особенно:
$ti = date("i")+$i;
if ($ti>59) {
$ti = rand (1, 59);
}

$i - это чего?

Сообщение отредактировал Светозар - 28.11.2011, 21:17
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
denis_h2
denis_h2
Topic Starter сообщение 28.11.2011, 21:16; Ответить: denis_h2
Сообщение #8


Бывалый
****

Группа: User
Сообщений: 419
Регистрация: 16.3.2011
Поблагодарили: 40 раз
Репутация:   15  


(proXBOCT @ 28.11.2011, 20:11) *
скрипт, который заставляет его парсить

Всмысле ?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
proXBOCT
proXBOCT
сообщение 28.11.2011, 21:18; Ответить: proXBOCT
Сообщение #9


PHP-писака
*****

Группа: Active User
Сообщений: 867
Регистрация: 20.4.2008
Из: Тольятти
Поблагодарили: 297 раз
Репутация:   47  


Ну вы показали отрывок кода, который производит парсинг заданного урла, а этот урл задаётся где-то выше, где и как задаётся мы не видим, мы видим только процесс парсинга.
Вообщем нужно смотреть весь код, откуда берётся урл и т.д.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
denis_h2
denis_h2
Topic Starter сообщение 28.11.2011, 21:27; Ответить: denis_h2
Сообщение #10


Бывалый
****

Группа: User
Сообщений: 419
Регистрация: 16.3.2011
Поблагодарили: 40 раз
Репутация:   15  


(Светозар @ 28.11.2011, 20:15) *
$i - это чего?

Это из начала парсера : for ($i=0;$count>=$i;$i++) {


В том коде тоже всё правельно !

(denis_h2 @ 28.11.2011, 19:46) *
if ($query==true) {
echo "<h1 style='color:red;'>Данные отправлены !</h1>";

Это сообщение вылазит точно 20 раз а новостей в базе добавляется 40, поэтому я незнаю где искать ошибки !
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
4 страниц V   1 2 3 4 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Недорогие услуги - php/js/mysql/jquery/bootstrap
2 vlads 651 13.12.2017, 21:01
автор: vlads
Открытая тема (нет новых ответов) Веб-разработка (HTML5, CSS3, JavaScript, jQuery, Ajax, PHP)
18 qpPeW 3412 12.12.2017, 13:32
автор: qpPeW
Открытая тема (нет новых ответов) php скрипты любой сложности / диз+верстка (адаптивно)
любые задачи на php - автоматизация, парсинг, работа с БД
1 affrodita 500 8.12.2017, 17:40
автор: affrodita
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыA-Parser 1.1 - продвинутый парсер ПС, кейвордов, контента, показателей, 70+ парсеров.
168 Forbidden 103074 4.12.2017, 13:55
автор: AParser_Support
Открытая тема (нет новых ответов) Нужен парсер контента
Уважаемые знатоки, требуется ваш совет или рекомендация.
4 m1h3y 1047 20.11.2017, 6:56
автор: Strellok


 



RSS Текстовая версия Сейчас: 15.12.2017, 6:53
Дизайн